| Index: src/mirror-delay.js
|
| ===================================================================
|
| --- src/mirror-delay.js (revision 3918)
|
| +++ src/mirror-delay.js (working copy)
|
| @@ -553,17 +553,19 @@
|
| return this.value_.length;
|
| };
|
|
|
| -
|
| -StringMirror.prototype.toText = function() {
|
| - if (this.length() > kMaxProtocolStringLength) {
|
| - return this.value_.substring(0, kMaxProtocolStringLength) +
|
| +StringMirror.prototype.getTruncatedValue = function(maxLength) {
|
| + if (maxLength != -1 && this.length() > maxLength) {
|
| + return this.value_.substring(0, maxLength) +
|
| '... (length: ' + this.length() + ')';
|
| - } else {
|
| - return this.value_;
|
| }
|
| + return this.value_;
|
| }
|
|
|
| +StringMirror.prototype.toText = function() {
|
| + return this.getTruncatedValue(kMaxProtocolStringLength);
|
| +}
|
|
|
| +
|
| /**
|
| * Mirror object for objects.
|
| * @param {object} value The object reflected by this mirror
|
| @@ -1955,6 +1957,15 @@
|
| }
|
|
|
|
|
| +JSONProtocolSerializer.prototype.maxStringLength_ = function() {
|
| + if (IS_UNDEFINED(this.options_) ||
|
| + IS_UNDEFINED(this.options_.maxStringLength)) {
|
| + return kMaxProtocolStringLength;
|
| + }
|
| + return this.options_.maxStringLength;
|
| +}
|
| +
|
| +
|
| JSONProtocolSerializer.prototype.add_ = function(mirror) {
|
| // If this mirror is already in the list just return.
|
| for (var i = 0; i < this.mirrors_.length; i++) {
|
| @@ -1987,8 +1998,7 @@
|
| o.value = mirror.value();
|
| break;
|
| case STRING_TYPE:
|
| - // Limit string length.
|
| - o.value = mirror.toText();
|
| + o.value = mirror.getTruncatedValue(this.maxStringLength_());
|
| break;
|
| case FUNCTION_TYPE:
|
| o.name = mirror.name();
|
| @@ -2052,11 +2062,12 @@
|
|
|
| case STRING_TYPE:
|
| // String values might have their value cropped to keep down size.
|
| - if (mirror.length() > kMaxProtocolStringLength) {
|
| - var str = mirror.value().substring(0, kMaxProtocolStringLength);
|
| + if (this.maxStringLength_() != -1 &&
|
| + mirror.length() > this.maxStringLength_()) {
|
| + var str = mirror.getTruncatedValue(this.maxStringLength_());
|
| content.value = str;
|
| content.fromIndex = 0;
|
| - content.toIndex = kMaxProtocolStringLength;
|
| + content.toIndex = this.maxStringLength_();
|
| } else {
|
| content.value = mirror.value();
|
| }
|
|
|