Opened 11 years ago

Closed 11 years ago

#5271 closed defect (invalid)

Illegal input string in vector2D error in IE

Reported by: guest Owned by: Eugene Lazutkin
Priority: high Milestone: 1.1
Component: DojoX GFX Version: 1.0
Keywords: Cc:
Blocked By: Blocking:

Description

To summarize my report:

  • Version of Dojo and build name:

1.0.0, which is hosted at http://o.aolcdn.com/dojo/1.0.0/dojo/dojo.xd.js

  • Browser versions and platforms where the bug occurs:

IE 6. I didn't try IE 7

  • Error messages displayed (if any):

Error:Arg: illegal input string in Vector2D

  • A contact address so we can follow-up with you:

gyang2007@…

  • Describe the exact situation in which the bug occurs as precisely as

possible. Is it reproducible? Did it break in a certain release? Is it still an issue with nightly or subversion head? etc.

Click the rectangle image using left mouse button, then click the drawing surface, which is "onmousedown" event, the error will occur at that moment. I did try it with the nightly revision - 11653. Nothing is drawn on the screen in IE, including both line and rectangle. No error message.

  • Testcases and patchces are even better.

I reproduced the bug using a simple program and posted it here: http://www1.coe.neu.edu/~gyang/IE/editor.html

It has only one editor.html and two image files, which are public.

Attachments (1)

IE-bug.zip (5.4 KB) - added by guest 11 years ago.
including editor.html and two image files

Download all attachments as: .zip

Change History (5)

Changed 11 years ago by guest

Attachment: IE-bug.zip added

including editor.html and two image files

comment:1 Changed 11 years ago by Eugene Lazutkin

Milestone: 1.1
Status: newassigned

comment:2 Changed 11 years ago by Eugene Lazutkin

severity: normalmajor

I am waiting on the debugger for IE (should be soon) to get to the bottom of the problem. In the meantime, could you see if you have the same problem with Dojo 1.0.2? It should be just a rename to test it.

comment:3 in reply to:  2 Changed 11 years ago by guest

The issue still exists in IE7 with dojo 1.0.2. Besides the test case above it can also be reproduced using the dojox.sketch test application in the nightly builds (although the issue in that application does only exist from the second rectangle drawn onwards). I remember there's another bug logged in Trac for the same issue which did have an (unsuccessful) patch - I can't find that bug right now. However, the patch provided in that bug shows where the problem is:

In vml.js:

In the setFill function definition for dojox.gfx.Shape right at the top of the file insert code like this at the beginning (below and outside of the "if (!fill)" check):

<code> force creation of the fill sub-object, if it is not created automatically if(!this.rawNode.fill){

var theFillObject = this.rawNode.ownerDocument.createElement("v:fill"); this.rawNode.appendChild(theFillObject); this.rawNode.fill = theFillObject;

} </code>

Unfortunately this does fix the issue described here (because this.rawNode.fill isn't null anymore), however, the fill created doesn't work. In the debugger one can see that there actually is already a v:fill child node but this.rawNode.fill is null.

Andreas

Replying to elazutkin:

I am waiting on the debugger for IE (should be soon) to get to the bottom of the problem. In the meantime, could you see if you have the same problem with Dojo 1.0.2? It should be just a rename to test it.

comment:4 Changed 11 years ago by Eugene Lazutkin

Resolution: invalid
Status: assignedclosed

The VML renderer doesn't support shapes with non-positive width or height. This is a limitation of VML.

Note: See TracTickets for help on using tickets.