Last Comment Bug 605979 - "ASSERTION: IDN node too large" with globalStorage.namedItem
: "ASSERTION: IDN node too large" with globalStorage.namedItem
Status: RESOLVED FIXED
[good first bug][mentor=jdm]
: assertion, testcase
Product: Core
Classification: Components
Component: DOM (show other bugs)
: Trunk
: All All
: -- normal (vote)
: mozilla7
Assigned To: Han Chang
:
: Andrew Overholt [:overholt]
Mentors:
Depends on:
Blocks: 326633
  Show dependency treegraph
 
Reported: 2010-10-20 14:48 PDT by Jesse Ruderman
Modified: 2011-09-16 00:01 PDT (History)
7 users (show)
Ms2ger: in‑testsuite?
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
testcase (134 bytes, text/html)
2010-10-20 14:48 PDT, Jesse Ruderman
no flags Details
Proposed fix (1.45 KB, patch)
2011-06-21 23:10 PDT, Han Chang
honzab.moz: review+
Details | Diff | Splinter Review

Description Jesse Ruderman 2010-10-20 14:48:08 PDT
Created attachment 484830 [details]
testcase

###!!! ASSERTION: IDN node too large: 'Error', file netwerk/dns/nsIDNService.cpp, line 589
Comment 1 Honza Bambas (:mayhemer) 2010-10-25 10:44:01 PDT
From RFC 2181:

"The length of any one label is limited to between 1 and 63 octets.  A full domain name is limited to 255 octets (including the separators)."

Your example is using a domain name with a label larger then 63 octets.  It is simply not a valid domain name.

If this bug is about showing a more meaningful message to the user, then please reopen, rename and suggest what the behavior should be.  True is that the message that is shown in the error console is not very useful.
Comment 3 Jesse Ruderman 2010-10-25 11:23:56 PDT
If it's ok as far as the code is concerned, you should change the assertion into an NS_WARNING or remove it.  (You can additionally add a warning in Firefox's error console if you want, or make it return something more specific than NS_ERROR_FAILURE, but I care less about that than not having bogus assertions.)
Comment 4 Jesse Ruderman 2011-06-12 15:47:12 PDT
See also bug 464799.
Comment 5 Josh Matthews [:jdm] (on vacation until Dec 5) 2011-06-12 16:19:16 PDT
http://mxr.mozilla.org/mozilla-central/source/netwerk/dns/nsIDNService.cpp#589
http://mxr.mozilla.org/mozilla-central/source/netwerk/dns/nsIDNService.cpp#607

This would be a good bug for someone just getting started with contributing to Firefox. The links above are to NS_ERROR calls which should instead be NS_WARNING.
Comment 6 Han Chang 2011-06-21 23:10:56 PDT
Created attachment 540976 [details] [diff] [review]
Proposed fix

I just changed the two lines from NS_ERROR to NS_WARNING as specified in the comments. I then ran make check from the obj/ directory and all tests passed except for one which is accounted for by a timezone bug.

(https://bugzilla.mozilla.org/show_bug.cgi?id=515254)

Should be relatively straightforward, at least I hope - this is my first contribution so be gentle, I'm still a noob!
Comment 7 Josh Matthews [:jdm] (on vacation until Dec 5) 2011-06-22 07:09:01 PDT
Comment on attachment 540976 [details] [diff] [review]
Proposed fix

Over to Honza, who's a peer of this code.
Comment 8 Honza Bambas (:mayhemer) 2011-06-23 09:31:13 PDT
Comment on attachment 540976 [details] [diff] [review]
Proposed fix

Review of attachment 540976 [details] [diff] [review]:
-----------------------------------------------------------------

Ah, yes, ok.  Got of my radar :)  Thanks!

r=honzab
Comment 10 Mounir Lamouri (:mounir) 2011-06-27 02:17:31 PDT
Merged:
http://hg.mozilla.org/mozilla-central/rev/307da86c2dff
Comment 11 Ioana (away) 2011-09-16 00:01:25 PDT
Verified on:
Mozilla/5.0 (Windows NT 6.1; rv:7.0) Gecko/20100101 Firefox/7.0
Build ID: 20110908135051
Mozilla/5.0 (Windows NT 6.1; rv:8.0a2) Gecko/20110914 Firefox/8.0a2
Build ID: 20110914042005
Mozilla/5.0 (Windows NT 6.1; rv:9.0a1) Gecko/20110915 Firefox/9.0a1
Build ID: 20110915030845

When loading the test case attached by the reporter, the following error is displayed in the web and error consoles:

uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMStorageList.namedItem]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: https://bug605979.bugzilla.mozilla.org/attachment.cgi?id=484830 :: <TOP_LEVEL> :: line 3"  data: no]

No warnings are displayed in any of the consoles.

Note You need to log in before you can comment on or make changes to this bug.