policy suspects that our use of -moz prefixed styles (especially deprecated ones) may be causing the stream of GTK errors on Linux:
07:52 < policy> anybody observes tons of "Gtk-CRITICAL **: IA__gtk_clipboard_set_with_data: assertion 'targets != NULL' failed"07:53 < policy> and "GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed" at start and yet many warns07:57 < policy> but at least one can be fixed https://bugzilla.mozilla.org/show_bug.cgi?id=82787607:58 < policy> "defined attributes for -moz-user-select instead of user-select"07:58 < policy> probably not only user-select
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Child items
...
Show closed items
Linked items
0
Link issues together to show that they're related.
Learn more.
Suggested workaround is "probably solution to clear it explicitly on newident by torbutton. that way the firefox bug when it fails to clear it won't show up? if nothing to clear then ffox will not trigger this bug."
This workaround might fail though -- it depends whether our action of clearing the clipboard nsIClipboard triggers the bug when we try to preemptively clear it.
torbutton_log(3, "New Identity: Disabling JS"); torbutton_disable_all_js();+ /* This workaround for gtk when browser tries to pass NULL+ * and triggering assert error:+ * Gtk-CRITICAL **: IA__gtk_clipboard_set_with_data: assertion 'targets != NULL' failed+ *+ * XXX: https://bugzilla.mozilla.org/show_bug.cgi?id=815952 for make it+ * configurable for next after ESR-31 */+ try {+ var nsIClipboard = Components.classes["@mozilla.org/widget/clipboard;1"].+ getService(Components.interfaces.nsIClipboard); ++ /* Clear clipboard by empty string if previous data was stored in private mode */ + if (nsIClipboard.hasDataMatchingFlavors(["application/x-moz-private-browsing"],+ 1, nsIClipboard.kGlobalClipboard)) {+ var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"].+ getService(Components.interfaces.nsIClipboardHelper);+ clipboard.copyString("");+ }+ } catch(e) {+ torbutton_log(3, "Exception on clipboard secure clear: "+e);+ }+ m_tb_prefs.setBoolPref("browser.zoom.siteSpecific", !m_tb_prefs.getBoolPref("browser.zoom.siteSpecific")); m_tb_prefs.setBoolPref("browser.zoom.siteSpecific",
Workaround above changes behavior for non-gtk platform which can to handle transferable with null data flavor and to clear clipboard. It's possible to modify proposed patch and to change behavior on gtk platform instead, like this:
if (nsIClipboard.hasDataMatchingFlavors(["application/x-moz-private-browsing"], 1, nsIClipboard.kGlobalClipboard)) { var xferable = Components.classes["@mozilla.org/widget/transferable;1"] .createInstance(Components.interfaces.nsITransferable); xferable.addDataFlavor(""); nsIClipboard.setData(xferable, null, nsIClipboard.kGlobalClipboard); }
It should to clear clipboard and to keep the same behavior for all platforms. Need testing.
Another solution to modify browser code (nsClipboardPrivacyHandler::Observe) to pass not null flavor?
ESR-38 planned for May, it's less than 3 month till bug will be auto-magically fixed. Not sure anyone able to implement fix for non-explode bug so fast, assert crash is bad but not as long as it's auto-magically recoverable by code. So lets to close this bug as fixed (it's really fixed just not for current ESR).
Another assert and warns is well known for vanilla firefox too.
ESR-38 planned for May, it's less than 3 month till bug will be auto-magically fixed. Not sure anyone able to implement fix for non-explode bug so fast, assert crash is bad but not as long as it's auto-magically recoverable by code. So lets to close this bug as fixed (it's really fixed just not for current ESR).
Another assert and warns is well known for vanilla firefox too.