Closed Bug 504525 Opened 15 years ago Closed 14 years ago

Vector.concat processes arguments in reverse order

Categories

(Tamarin Graveyard :: Virtual Machine, defect, P2)

Tracking

(Not tracked)

RESOLVED FIXED
Q3 11 - Serrano

People

(Reporter: lhansen, Assigned: tharwood)

References

Details

(Whiteboard: Has patch)

Attachments

(2 files)

Attached file Test case
See test case.  The two lines printed should be the same; the vector case prints 1,4,3,2 rather than 1,2,3,4.
Assignee: tierney → tharwood
Priority: -- → P2
Flags: in-testsuite?
Flags: flashplayer-triage+
Flags: flashplayer-qrb+
Added testcase to as3/Vector/concat.as as well as expectedfail to testconfig.txt.
Chris do you have a patch for this? (comment #1)
Media added: http://hg.mozilla.org/tamarin-redux/rev/2705
Flags: in-testsuite? → in-testsuite+
Args were processed in correct order, but were spliced into the result vector using the length of the original vector as an insert point, thus apparently backwards.
Attachment #405340 - Flags: review?(tierney)
Comment on attachment 405340 [details] [diff] [review]
Patch, splices into result vector using result's updated length

Fix looks ok, but do we need to version check this fix?  Code that's depending on this behavior or working around it might not work if it suddenly changes.

There is a bugFlags member in avmplus::PoolObject to allow hosts to turn on/off certain bug fixes.  I think it's only used for one bug so far.  

Come to think of it, does the other recent Vector fix also need version checking?
Attachment #405340 - Flags: review?(tierney) → review-
If this changes existing behavior of Vector (as shipping in Flash/AIR) then it absolutely *MUST* be version checked.
To(In reply to comment #6)
> If this changes existing behavior of Vector (as shipping in Flash/AIR) then it
> absolutely *MUST* be version checked.

To expand upon this comment: clearly, the existing behavior of Vector.concat is "wrong" according to the spec. Nevertheless, any existing Flash/AIR content that calls Vector.concat is potentially relying on the existing (wrong) behavior, so said existing behavior needs to be preserved in order to prevent breakage of existing content.
Flags: flashplayer-needsversioning+
Target Milestone: flash10.1 → Future
Priority: P2 → --
Depends on: 535770
Whiteboard: Has patch
Priority: -- → P2
Target Milestone: Future → flash10.2
This was fixed (in a versioned way) in http://hg.mozilla.org/tamarin-redux/rev/3ad427924afe as part of bug 535770
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Flags: flashplayer-bug+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: