{"record":{"id":"f2b1f6b1ce0f7533","repo":"GopeedLab/gopeed","slug":"gopeed-runtime-blob-createobjecturl-options-range","errorCode":null,"errorMessage":"gopeed.runtime.blob.createObjectURL options.range requires a positive options.size","messagePattern":"gopeed\\.runtime\\.blob\\.createObjectURL options\\.range requires a positive options\\.size","errorType":"validation","errorClass":"TypeError","httpStatus":null,"severity":"error","filePath":"pkg/download/engine/inject/stream/stream.js","lineNumber":634,"sourceCode":"        normalized.range = options.range;\n      }\n    }\n    if (!normalized.contentType && value && typeof value.type === \"string\") {\n      normalized.contentType = value.type;\n    }\n    if (!normalized.size && value) {\n      if (Number.isFinite(Number(value.size)) && Number(value.size) > 0) {\n        normalized.size = Number(value.size);\n      } else if (value._buffer && Number.isFinite(Number(value._buffer.byteLength))) {\n        normalized.size = Number(value._buffer.byteLength);\n      }\n    }\n    return normalized;\n  }\n\n  function validateBlobObjectURLOptions(options) {\n    if (options.range && !(Number.isFinite(Number(options.size)) && Number(options.size) > 0)) {\n      throw new TypeError(\"gopeed.runtime.blob.createObjectURL options.range requires a positive options.size\");\n    }\n  }\n\n  function normalizeOpenRequest(request) {\n    const offset = Math.max(0, Number(request && request.offset) || 0);\n    const endValue = Number(request && request.end);\n    const end = Number.isFinite(endValue) ? endValue : -1;\n    return { offset, end };\n  }\n\n  function yieldBlobPipeTask() {\n    return new Promise((resolve) => {\n      if (typeof setTimeout === \"function\") {\n        setTimeout(resolve, 0);\n      } else {\n        Promise.resolve().then(resolve);\n      }\n    });","sourceCodeStart":616,"sourceCodeEnd":652,"githubUrl":"https://github.com/GopeedLab/gopeed/blob/7b7327ffb30816273a74b142cccc0bc10c5a4c67/pkg/download/engine/inject/stream/stream.js#L616-L652","documentation":"Error \"gopeed.runtime.blob.createObjectURL options.range requires a positive options.size\" thrown in GopeedLab/gopeed.","triggerScenarios":"Thrown at pkg/download/engine/inject/stream/stream.js:634 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7b7327ffb30816273a74b142cccc0bc10c5a4c67","analyzedAt":"2026-08-16T02:51:03.250Z","schemaVersion":2},"datasetVersion":"2026-08-16T03:17:38.424Z"}