Remove infinite recursion loop check in XPC_WN_Helper_NewResolve

VERIFIED FIXED in mozilla1.4beta

Status

()

Core
XPConnect
P2
normal
VERIFIED FIXED
15 years ago
15 years ago

People

(Reporter: David Bradley, Assigned: David Bradley)

Tracking

({perf})

Trunk
mozilla1.4beta
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

(Assignee)

Description

15 years ago
The check at
http://lxr.mozilla.org/mozilla/source/js/src/xpconnect/src/xpcwrappednativejsops.cpp#911
is no longer needs. The JS engine avoids this.

Updated

15 years ago
Summary: Rmove infinite recursion loop check in XPC_WN_Helper_NewResolve → Remove infinite recursion loop check in XPC_WN_Helper_NewResolve
(Assignee)

Comment 1

15 years ago
Created attachment 120570 [details] [diff] [review]
Removes the recursion check

This removes the recursion checks.
(Assignee)

Comment 2

15 years ago
To 1.5
Status: NEW → ASSIGNED
Priority: -- → P2
Target Milestone: --- → mozilla1.5alpha
Comment on attachment 120570 [details] [diff] [review]
Removes the recursion check

r=brendan@mozilla.org

/be
Attachment #120570 - Flags: review+
(Assignee)

Comment 4

15 years ago
Comment on attachment 120570 [details] [diff] [review]
Removes the recursion check

Looking for an sr, will try and get this into 1.4b since have a patch and an
r=, and have a little time left before the freeze
Attachment #120570 - Flags: superreview?(jst)
(Assignee)

Updated

15 years ago
Target Milestone: mozilla1.5alpha → mozilla1.4beta
Comment on attachment 120570 [details] [diff] [review]
Removes the recursion check

sr=jst
Attachment #120570 - Flags: superreview?(jst) → superreview+
(Assignee)

Comment 6

15 years ago
Created attachment 120881 [details] [diff] [review]
Revised, only removes the check for resolve callbacks only

I was a little over eager on removing some of the recursion checks. The one in
XPC_WN_OnlyIWrite_PropertyStub is not only a recursion check, but a check for
being called from the resolve callbacks. In that situation it allows the
addition of the property by XPConnect, but prevents others.

So, the patch is similar, unfortunately doesn't remove as much code as before.
Attachment #120570 - Attachment is obsolete: true
(Assignee)

Updated

15 years ago
Attachment #120881 - Flags: superreview?(jst)
Attachment #120881 - Flags: review?(brendan)
Comment on attachment 120881 [details] [diff] [review]
Revised, only removes the check for resolve callbacks only

sr=jst
Attachment #120881 - Flags: superreview?(jst) → superreview+
Comment on attachment 120881 [details] [diff] [review]
Revised, only removes the check for resolve callbacks only

r=brendan@mozilla.org -- can you enlighten me about where the get-property is
in an xpconnect resolve hook?

Also, please add diff -p to your .cvsrc file, it'll help label context hunks
with function or method names.

/be
Attachment #120881 - Flags: review?(brendan) → review+
(Assignee)

Comment 9

15 years ago
Not sure if I understand what you are asking. A couple of get properties occur
when the XPCNativeMember's Resolve gets called via GetValue, and it creates a
new function, but nothing involving the currently resolving property. If a
scriptable helper is involved, then pretty much anything could happen.

The problem I was having in the first patch was that add-property hook was
getting called as a result of creating the property from within the resolve hook
via the XPConnect DefineProperty function.
(Assignee)

Comment 10

15 years ago
Patch checked in
Status: ASSIGNED → RESOLVED
Last Resolved: 15 years ago
Resolution: --- → FIXED

Comment 11

15 years ago
Checking verified -
Status: RESOLVED → VERIFIED
(Assignee)

Comment 12

15 years ago
*** Bug 80368 has been marked as a duplicate of this bug. ***
You need to log in before you can comment on or make changes to this bug.