Bug 301701
| Summary: | range request to blob url created from URL.createObjectURL does not work in Safari but works in Chrome | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Andrew Hodel <andrewhodel> |
| Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED INVALID | ||
| Severity: | Major | CC: | ap |
| Priority: | P2 | ||
| Version: | Safari Technology Preview | ||
| Hardware: | All | ||
| OS: | All | ||
Andrew Hodel
https://jsfiddle.net/7h016nke/
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Andrew Hodel
It can be accomplished with ReadableStream but fetch should also work correctly.
https://jsfiddle.net/dw2vkj7h/
Alexey Proskuryakov
Thank you for the report! I cannot reproduce this using STP 230, <https://jsfiddle.net/7h016nke/> logs `"bytes=7-11", [object ArrayBuffer]` in console. And when I decode the content, I see the correct bytes from the file.
Andrew Hodel
@comment #2
It's a good thing this conversation is being documented.
You need to load much data and eventually Safari starts to log an error in the console that is a specific WebKit error from URL.createObjectURL when you try to load files after that.
Andrew Hodel
I wrote more about it here - https://medium.com/@andrewhodel/read-files-to-arraybuffer-without-delay-or-memory-usage-in-every-browser-aede7b3d9c2a
Alexey Proskuryakov
Can you please provide steps to reproduce that actually demonstrate the issue? How much data is much data? Is it large files or selecting multiple files sequentially?
Andrew Hodel
I don't know why you don't understand that it does the same thing to you as it does to me.
I've already removed using fetch and replaced it with using streams because of this issue.
I think the only reasonable attempt at answering that is that someone who is familiar with that process in the WebKit codebase evaluate the routine with focus on how this could happen to answer that question.
That's why it is a bug report, do you think that I am lying to you for fun and entertainment?
Alexey Proskuryakov
Please provide steps to reproduce, then we can take a look.
Andrew Hodel
@comment #7
I did, I didn't provide time to actualize those steps because it is a very long time.
I also told you that it would be less time and more importantly effort to:
"I think the only reasonable attempt at answering that is that someone who is familiar with that process in the WebKit codebase evaluate the routine with focus on how this could happen to answer that question."
Andrew
Alexey Proskuryakov
I hear you that you are observing a problem. The test does not reproduce it, so it could be a WebKit bug or a bug in your production code, either way, there is nothing to investigate based on the provided information.
Andrew Hodel
The test does reproduce it, you just didn't test enough as I already explained.
It doesn't matter, it's been documented and is searchable and through time more people will reply to the bug if they experience it. That increases it's credibility.
It should not have been closed because it does not infringe on any constitutional rights, that is your mistake and it is also documented.
Andrew
Andrew Hodel
The test does reproduce it, you just didn't test enough as I already explained.
It doesn't matter, it's been documented and is searchable and through time more people will reply to the bug if they experience it. That increases it's credibility.
It should not have been closed because it does not infringe on any constitutional rights, that is your mistake and it is also documented.
Andrew