Skip to content

Commit 6fdcddb

Browse files
author
Kyungmi Koong
committed
Merge pull request #64 from kyungmi/master
[BUGFIX] (ODP-317) fix output logging bug (the logger could not write…
2 parents 71652cf + b73859d commit 6fdcddb

File tree

1 file changed

+33
-43
lines changed

1 file changed

+33
-43
lines changed

common/src/webida/plugins/output/plugin.js

Lines changed: 33 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ function (workbench, _, topic, CheckBox, Button, consoleViewHtml, toolbarTmpl, V
122122
mod.TRANSFORMERS_MAP = {
123123
// 'htmlescape': transformerHtmlEscape,
124124
'fileloc': transformerFileLoc,
125-
'uri': transformerUri,
125+
'uri': transformerUri
126126
// 'error': transformerError
127127
};
128128

@@ -256,59 +256,49 @@ function (workbench, _, topic, CheckBox, Button, consoleViewHtml, toolbarTmpl, V
256256
var processQueue = function () {
257257
_.range(rCount).forEach(function () {
258258
if (self.logQueue.length > 0) {
259-
var args, i;
259+
var args;
260260
var $contentElem = $(self.getContentElem());
261261
var $groupContent = $('<div>');
262262
var $messageElem;
263263
var type;
264264

265-
try {
266-
_.range(self.logQueue.length).forEach(function (i) {
267-
if (i >= MAX_COUNT) {
268-
throw 'break';
269-
}
270-
args = self.logQueue[i].args;
271-
type = self.logQueue[i].type;
272-
$messageElem = $('<div class="console_message_item pre_whitespace">');
273-
_.each(args, function (arg) {
274-
var transformer = null;
275-
var data = null;
276-
if (typeof(arg) === 'object') {
277-
if (arg.hasOwnProperty('type')) {
278-
transformer = getTransformer(arg.type);
279-
}
280-
} else if (typeof(arg) === 'string') {
281-
transformer = getTransformer('uri');
265+
var range = Math.min(self.logQueue.length, MAX_COUNT);
266+
_.range(range).forEach(function (i) {
267+
args = self.logQueue[i].args;
268+
type = self.logQueue[i].type;
269+
$messageElem = $('<div class="console_message_item pre_whitespace">');
270+
_.each(args, function (arg) {
271+
var transformer = null;
272+
var data = null;
273+
if (typeof(arg) === 'object') {
274+
if (arg.hasOwnProperty('type')) {
275+
transformer = getTransformer(arg.type);
282276
}
277+
} else if (typeof(arg) === 'string') {
278+
transformer = getTransformer('uri');
279+
}
283280

284-
if (transformer) {
285-
data = transformer(arg);
286-
} else {
287-
data = arg;
288-
}
281+
if (transformer) {
282+
data = transformer(arg);
283+
} else {
284+
data = arg;
285+
}
289286

290-
if (data) {
291-
$messageElem.append(data);
292-
$messageElem.append(' ');
293-
if (type === 'err') {
294-
$messageElem.addClass('console_error_message');
295-
}
287+
if (data) {
288+
$messageElem.append(data);
289+
$messageElem.append(' ');
290+
if (type === 'err') {
291+
$messageElem.addClass('console_error_message');
296292
}
297-
});
298-
299-
$messageElem.append('<br>');
300-
$groupContent.append($messageElem);
293+
}
301294
});
302-
} catch (e) {
303-
if (e !== 'break') {
304-
throw e;
305-
}
306-
}
307295

308-
if (i === MAX_COUNT) {
309-
self.logQueue.splice(0, MAX_COUNT);
310-
} else {
311-
self.logQueue = [];
296+
$messageElem.append('<br>');
297+
$groupContent.append($messageElem);
298+
});
299+
300+
self.logQueue.splice(0, MAX_COUNT);
301+
if(range < MAX_COUNT){
312302
clearInterval(self.interval);
313303
self.interval = null;
314304
}

0 commit comments

Comments
 (0)