Closed
Bug 243429
Opened 21 years ago
Closed 19 years ago
XPCOM_BREAK_ON_LOAD no longer works
Categories
(Core :: XPCOM, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: bryner, Assigned: bryner)
References
Details
(Keywords: fixed-aviary1.0, fixed1.7.5, regression)
Attachments
(4 files, 2 obsolete files)
670 bytes,
patch
|
darin.moz
:
review+
darin.moz
:
superreview+
|
Details | Diff | Splinter Review |
1.10 KB,
patch
|
Details | Diff | Splinter Review | |
941 bytes,
patch
|
darin.moz
:
review+
darin.moz
:
superreview+
|
Details | Diff | Splinter Review |
941 bytes,
patch
|
Details | Diff | Splinter Review |
After the string branch landing, XPCOM_BREAK_ON_LOAD no longer works due to a
subtle behavior change in nsString::Find() when the starting index is < 0.
Assignee | ||
Comment 1•21 years ago
|
||
Restore the old behavior -- a starting index < 0 is treated as starting from
the beginning of the string.
Assignee | ||
Updated•21 years ago
|
Attachment #148327 -
Flags: superreview?(darin)
Attachment #148327 -
Flags: review?(darin)
Comment 2•21 years ago
|
||
Comment on attachment 148327 [details] [diff] [review]
patch
thanks bryner!
Attachment #148327 -
Flags: superreview?(darin)
Attachment #148327 -
Flags: superreview+
Attachment #148327 -
Flags: review?(darin)
Attachment #148327 -
Flags: review+
Assignee | ||
Comment 3•21 years ago
|
||
checked in
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Comment 4•21 years ago
|
||
*** Bug 243095 has been marked as a duplicate of this bug. ***
Comment 5•21 years ago
|
||
Despite this fix, XPCOM_BREAK_ON_LOAD is still busted in RFind on MinGW.
Status: RESOLVED → REOPENED
OS: Linux → All
Resolution: FIXED → ---
Comment 6•21 years ago
|
||
Er, I meant Find.
Comment 7•21 years ago
|
||
Yep, busted on OpenVMS too (see my comment today in bug 240837).
Comment 8•21 years ago
|
||
My mistake. The fix does fix it. Its just that the fix isn't in 1.7. Sigh.....
Comment 9•21 years ago
|
||
dmose: what build were you referring to in comment #5? a 1.7 branch build /
aviary 1.0 build? if so, can we close this as fixed again? colin is saying
that this is only fixed on the trunk.
Comment 10•21 years ago
|
||
Darin: this happens on both the trunk and 1.7 branch for me.
Comment 11•21 years ago
|
||
Was this put in aviary?
I think I'd like it in 1.7 also.
Updated•20 years ago
|
Status: REOPENED → RESOLVED
Closed: 21 years ago → 20 years ago
Keywords: fixed-aviary1.0,
fixed1.7.x
Resolution: --- → FIXED
Comment 12•20 years ago
|
||
Last I checked, this was still broken on MinGW, and Mike says he didn't check in
any changes on the trunk.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Comment 13•19 years ago
|
||
Does this (+ "suspend" for XPCOM_DEBUG_BREAK) work for you? I need these to have break-on-load work on Mac OS X (10.3.9).
Comment 14•19 years ago
|
||
> Created an attachment (id=207049) [edit]
> modernize modulename matching
NOTE: The old code attempted case-insensitive substring matching. This patch changes it to case-sensitive substring matching. Is that really desirable?
Comment 16•19 years ago
|
||
The prev patch broke colon-separated multiple module names search.
Curiously now I don't need XPCOM_DEBUG_BREAK again....
Attachment #207386 -
Attachment is obsolete: true
Updated•19 years ago
|
Attachment #207411 -
Flags: review?(bryner)
Assignee | ||
Comment 17•19 years ago
|
||
Comment on attachment 207411 [details] [diff] [review]
recover multiple module names search
Can you ask Darin instead?
Attachment #207411 -
Flags: review?(bryner)
Updated•19 years ago
|
Attachment #207411 -
Flags: review?(darin)
Comment 18•19 years ago
|
||
Comment on attachment 207411 [details] [diff] [review]
recover multiple module names search
>Index: nsNativeComponentLoader.cpp
>- if (leafName.Find(token, PR_TRUE)) {
>+ nsDependentCString tokCStr(token);
>+ nsACString::const_iterator start, end;
>+ leafName.BeginReading(start);
>+ leafName.EndReading(end);
>+ if (CaseInsensitiveFindInReadable(tokCStr, start, end)) {
> NS_BREAK();
I think the old bug was that the return value of Find was not
checked correctly. This should work too:
if (leafName.Find(token, PR_TRUE) != kNotFound) {
NS_BREAK();
}
If that works, then I would use that instead as it is a lot less
code.
Comment 19•19 years ago
|
||
I think this is a good chance to get rid of the obsolete api, but I don't mind if you prefer this one.
Comment 20•19 years ago
|
||
I think this is a good chance to get rid of the obsolete api, but I don't mind if you prefer this one.
Comment 21•19 years ago
|
||
Comment on attachment 208188 [details] [diff] [review]
compare to kNotFound
r+sr=darin
I think there are parts of the "obsolete" string API such as Find and RFind that are in fact better than the functions in nsReadableUtils.h <-- many of those functions result in bloaty code IMO. We should fix the string API to provide things like Find and RFind in a non-obsolete way ;-)
Attachment #208188 -
Flags: superreview+
Attachment #208188 -
Flags: review+
Comment 22•19 years ago
|
||
darin, could you check this in? thanks.
Comment 23•19 years ago
|
||
Sorry, I meant to mark this fixed after I commited it a while back.
Status: REOPENED → RESOLVED
Closed: 20 years ago → 19 years ago
Resolution: --- → FIXED
Updated•19 years ago
|
Attachment #207411 -
Flags: review?(darin)
You need to log in
before you can comment on or make changes to this bug.
Description
•