diff --git a/src/vs/workbench/api/node/extHost.api.impl.ts b/src/vs/workbench/api/node/extHost.api.impl.ts index d7334dde35c65c511aec75a0609f379dbda6916c..90df60d5188d86b435aa735d7f6b5e2bf9fd6db6 100644 --- a/src/vs/workbench/api/node/extHost.api.impl.ts +++ b/src/vs/workbench/api/node/extHost.api.impl.ts @@ -439,12 +439,12 @@ export function createApiFactory( let uriPromise: TPromise; let options = uriOrFileNameOrOptions as { language?: string; content?: string; }; - if (!options || (options && (typeof options.language === 'string' || typeof options.content === 'string'))) { - uriPromise = extHostDocuments.createDocumentData(options); - } else if (typeof uriOrFileNameOrOptions === 'string') { + if (typeof uriOrFileNameOrOptions === 'string') { uriPromise = TPromise.as(URI.file(uriOrFileNameOrOptions)); } else if (uriOrFileNameOrOptions instanceof URI) { uriPromise = TPromise.as(uriOrFileNameOrOptions); + } else if (!options || typeof options === 'object') { + uriPromise = extHostDocuments.createDocumentData(options); } else { throw new Error('illegal argument - uriOrFileNameOrOptions'); }