diff --git a/src/vs/base/common/marshalling.ts b/src/vs/base/common/marshalling.ts index 335ee5691e0..890828c9cb6 100644 --- a/src/vs/base/common/marshalling.ts +++ b/src/vs/base/common/marshalling.ts @@ -5,6 +5,7 @@ import { URI } from 'vs/base/common/uri'; import { regExpFlags } from 'vs/base/common/strings'; +import { VSBuffer } from 'vs/base/common/buffer'; export function stringify(obj: any): string { return JSON.stringify(obj, replacer); @@ -44,6 +45,13 @@ export function revive(obj: any, depth = 0): any { case 2: return new RegExp(obj.source, obj.flags); } + if ( + obj instanceof VSBuffer + || obj instanceof Uint8Array + ) { + return obj; + } + // walk object (or array) for (let key in obj) { if (Object.hasOwnProperty.call(obj, key)) {