Last Comment Bug 605979 - "ASSERTION: IDN node too large" with globalStorage.namedItem
: "ASSERTION: IDN node too large" with globalStorage.namedItem
[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]
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:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

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 User image Jesse Ruderman 2010-10-20 14:48:08 PDT
Created attachment 484830 [details]

###!!! ASSERTION: IDN node too large: 'Error', file netwerk/dns/nsIDNService.cpp, line 589
Comment 1 User image 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 User image 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 User image Jesse Ruderman 2011-06-12 15:47:12 PDT
See also bug 464799.
Comment 5 User image Josh Matthews [:jdm] 2011-06-12 16:19:16 PDT

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 User image 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.


Should be relatively straightforward, at least I hope - this is my first contribution so be gentle, I'm still a noob!
Comment 7 User image Josh Matthews [:jdm] 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 User image 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!

Comment 10 User image Mounir Lamouri (:mounir) 2011-06-27 02:17:31 PDT
Comment 11 User image 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 :: :: <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.