rsocket-js icon indicating copy to clipboard operation
rsocket-js copied to clipboard

Add WebWorker support for LiteBuffer

Open ygrill-astek opened this issue 3 years ago • 0 comments

LiteBuffer isn't supported in WebWorker context as the code use window object which is undefined in WebWorker

Solution which seems to work for me Use following code in LiteBuffer.js

if (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope) {
  Object.defineProperty(WorkerGlobalScope, 'Buffer', {
    configurable: true,
    enumerable: false,
    value: Buffer,
    writable: true,
  });
} else {
  Object.defineProperty(window, 'Buffer', {
    configurable: true,
    enumerable: false,
    value: Buffer,
    writable: true,
  });

}

instead of only

Object.defineProperty(window, 'Buffer', {
     configurable: true,
     enumerable: false,
     value: Buffer,
     writable: true,
   });

ygrill-astek avatar Apr 05 '22 10:04 ygrill-astek