jmoenig/Snap--Build-Your-Own-Blocks — pull request #537 by cycomachead (2014-07-28 07:34:33+00:00)
Title: Fix #433; Exporting Long URIs In Chrome

This fixes an issue where Chrome displays an "Aw, snap" error page
when the URL field is > ~2.09 million characters. In Snap! this occurs
in projects with lots of media, or exporting large images.

This puts a wrapper around setting `location.hash` and around `window.open`
which are the two ways Snap! will display data in the URL bar. The
location.hash issue is particularly bad because it causes the state of
the current tab to be lost, leading to unsaved work. In this case, when an
error occurs, I've set the hash to '', which shouldn't affect the user.

When a new window is attempting to open, an error is thrown an displayed
in Snap! instructing the user to try another browser. (A more specific
message could be provided if we wanted, but this currently applies to any
exported item.)