Your message dated Sat, 12 Sep 2009 05:50:20 +0300
with message-id <[email protected]>
and subject line Re: hang/freeze on webpages with a many (1000s) of checkboxes
has caused the Debian Bug report #538776,
regarding hang/freeze on webpages with many (1000s) of checkboxes
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
538776: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=538776
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: iceweasel
Version: 3.5.1-1
Severity: normal

tags experimental upstream
forwarded https://bugzilla.mozilla.org/show_bug.cgi?id=477564


As is reported at upstream bug #477564, webpages with lots of checkboxes
will cause Firefox, erhm, Iceweasel 3.5 to hang.

https://bugzilla.mozilla.org/show_bug.cgi?id=477564

The patch included with the upstream report (and attached here) fixes the hangs 
for me.



-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.30.2-tuxonice (SMP w/2 CPU cores)
Locale: LANG=fi_FI.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages iceweasel depends on:
ii  debianutils                   3.2        Miscellaneous utilities specific t
ii  fontconfig                    2.6.0-4    generic font configuration library
ii  libc6                         2.9-12     GNU C Library: Shared libraries
ii  libglib2.0-0                  2.20.4-1   The GLib library of C routines
ii  libgtk2.0-0                   2.16.5-1   The GTK+ graphical user interface 
ii  libnspr4-0d                   4.8-1      NetScape Portable Runtime Library
ii  libstdc++6                    4.4.0-5    The GNU Standard C++ Library v3
ii  procps                        1:3.2.8-1  /proc file system utilities
ii  psmisc                        22.8-1     utilities that use the proc file s
ii  xulrunner-1.9.1               1.9.1.1-1  XUL + XPCOM application runner

iceweasel recommends no packages.

Versions of packages iceweasel suggests:
ii  latex-xft-fonts      1.6.3-4             TrueType versions of some TeX font
ii  libkrb53             1.6.dfsg.4~beta1-13 Transitional library package/krb4 
pn  mozplugger           <none>              (no description available)
ii  ttf-mathematica4.1   8                   Installer of Mathematica TrueType 
ii  xfonts-mathml        2                   Type1 Symbol font for MathML
ii  xprint               2:1.4.2-11          X11 print system (binary)
ii  xulrunner-1.9.1-gnom 1.9.1.1-1           Support for GNOME in xulrunner app

-- no debconf information
diff --git a/browser/components/sessionstore/src/nsSessionStore.js b/browser/components/sessionstore/src/nsSessionStore.js
--- a/browser/components/sessionstore/src/nsSessionStore.js
+++ b/browser/components/sessionstore/src/nsSessionStore.js
@@ -1472,18 +1472,25 @@ SessionStoreService.prototype = {
   _collectFormDataForFrame: function sss_collectFormDataForFrame(aDocument) {
     let formNodes = aDocument.evaluate(XPathHelper.restorableFormNodes, aDocument,
                                        XPathHelper.resolveNS,
                                        Ci.nsIDOMXPathResult.UNORDERED_NODE_ITERATOR_TYPE, null);
     let node = formNodes.iterateNext();
     if (!node)
       return null;
     
+    const MAX_GENERATED_XPATHS = 100;
+    let generatedCount = 0;
+    
     let data = {};
     do {
+      // Only generate a limited number of XPath expressions for perf reasons (cf. bug 477564)
+      if (!node.id && ++generatedCount > MAX_GENERATED_XPATHS)
+        continue;
+      
       let id = node.id ? "#" + node.id : XPathHelper.generate(node);
       if (node instanceof Ci.nsIDOMHTMLInputElement) {
         if (node.type != "file")
           data[id] = node.type == "checkbox" || node.type == "radio" ? node.checked : node.value;
         else
           data[id] = { type: "file", value: node.value };
       }
       else if (node instanceof Ci.nsIDOMHTMLTextAreaElement)

--- End Message ---
--- Begin Message ---
Package: iceweasel
Severity: normal
version: 3.5.3-1

Thanks Eric for the quick releases. :)

Closing as fixed (unless I screw this up).

Attachment: signature.asc
Description: Digital signature


--- End Message ---

Reply via email to