Closed Bug 536912 Opened 15 years ago Closed 14 years ago

SVG text node method getNumberOfChars() throws an exception.

Categories

(Core :: SVG, defect)

defect
Not set
major

Tracking

()

RESOLVED FIXED
Tracking Status
status1.9.2 --- .4-fixed

People

(Reporter: mail, Assigned: longsonr)

References

Details

(Keywords: regression, verified1.9.2)

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_2; en-us) AppleWebKit/531.21.8 (KHTML, like Gecko) Version/4.0.4 Safari/531.21.10
Build Identifier: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2b5) Gecko/20091204 Firefox/3.6b5

uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMSVGTextPositioningElement.getNumberOfChars]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://localhost/assets/js/Raphael.class.js :: anonymous :: line 1435" data: no]

Reproducible: Always

Steps to Reproduce:
1. create a SVG text node
2. try to call its method "getNumberOfChars()"
3. get component NS_ERROR_FAILURE
Actual Results:  
uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMSVGTextPositioningElement.getNumberOfChars]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://localhost/assets/js/Raphael.class.js :: anonymous :: line 1435" data: no]

Expected Results:  
to return a Javascript value native type "Number".
Component: File Handling → SVG
Product: Firefox → Core
QA Contact: file.handling → general
Please provide a complete minimal testcase. This functionality works for me but you can't call it on text that is display:none or that is not part of an SVG document.
You were right on with this. If I call this method with an element that contains display="none" it throws this exception. In any case, why wasn't it failing in FF 3.5 and now in FF3.6 it's failing, is this a new feature?? just curious.
It's been like that ever since I wrote it. I've no idea what's going on in your case in 3.5.
I'm also getting this error since upgrading to FF3.6. 

For a production test case, please visit http://carleton.aidcalculator.com/results/ (exception thrown and text nodes display incorrectly...) SVG text displays correctly in Webkit, IE7/8

This is has also been identified by Raphael JS users at: http://groups.google.com/group/raphaeljs/browse_thread/thread/8c3f94f7cf7b8c5b/2a4d54ece3f19370

Any thoughts on if FF3.6 broke this SVG method, or any leads on what may have changed to make the display stop functioning correctly in FF3.6?
Please attach a minimal testcase to the bug. I just get some kind of legalese page from http://carleton.aidcalculator.com/results/ and I don't know what to do with that :-(
(In reply to comment #5)
> Please attach a minimal testcase to the bug. I just get some kind of legalese
> page from http://carleton.aidcalculator.com/results/ and I don't know what to
> do with that :-(

Correct. This site is in production, so there is legalese associated with the business logic. There is a javascript link at the bottom of the page that hides this legal text and reveals the SVG pie chart built with g.raphaeljs.com

Sorry for the confusion.
I'm unwilling to click though the licence because of its terms. Please provide a testcase as an attachment here.
For instance...

> User may not modify, copy, distribute, broadcast, transmit, reproduce, publish, mirror, frame, license, transfer, sell, or otherwise use any information or material obtained from or through this Estimator. 

I would need to do that.

> You may use the Estimator only as expressly permitted in these Terms of Use. In doing so, you must comply with any technical limitations in the Estimator that only allow you to use it in certain ways. You may not work around any technical limitations in the Estimator; reverse engineer, decompile or disassemble the Estimator

And reverse engineer at least part of it.
BTW if you are going to copy stuff from http://carleton.aidcalculator.com/results/ into bugzilla you had better be sure you have the legal right to do so and that we can use it to turn it into testcases.
Hello,
would that be ok for your tests : http://gregoo.ftp.free.fr/bugzilla.mozilla.org/536912/536912.xml ?
Indeed.
Blocks: 495296
Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → longsonr
Keywords: regression
Attached patch patchSplinter Review
revert the logic to what it used to be.
Attachment #426276 - Flags: review?(roc)
OS: Mac OS X → All
Hardware: x86_64 → All
pushed http://hg.mozilla.org/mozilla-central/rev/af0f0615944e
Status: NEW → RESOLVED
Closed: 14 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Comment on attachment 426276 [details] [diff] [review]
patch

This is a regression on 3.6 and affects raphael when used with SVG. The patch puts the logic back to the 3.5 logic and includes tests so should be very safe.
Attachment #426276 - Flags: approval1.9.2.2?
Comment on attachment 426276 [details] [diff] [review]
patch

Didn't make 1.9.2.2, moving flag forward.
Attachment #426276 - Flags: approval1.9.2.2? → approval1.9.2.3?
Comment on attachment 426276 [details] [diff] [review]
patch

a=beltzner for 1.9.2.4
Attachment #426276 - Flags: approval1.9.2.4? → approval1.9.2.4+
Verified fixed for 1.9.2 in Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.4pre) Gecko/20100412 Namoroka/3.6.4pre (.NET CLR 3.5.30729) using testcase in comment 10.
Keywords: verified1.9.2
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: