Closed
Bug 3216
Opened 26 years ago
Closed 17 years ago
RX: widgets - nsToolkit.h
Categories
(Core :: Widget: Win32, defect, P4)
Tracking
()
RESOLVED
INVALID
Future
People
(Reporter: chofmann, Assigned: rods)
Details
should be per-document, not global (static). More for trudelle:
Much of our non-static/global data needs to be partitioned by window,
not reachable by other windows except through statics/globals.
Therefore we're starting the hunt with statics and globals.
Please have a look at the file(s) below to see if we can improve reentrantcy
across
the code base by making modifications to:
widget/src/windows/nsToolkit.h: static HINSTANCE mDllInstance;
widget/src/windows/nsToolkit.h: static MouseTrailer* theMouseTrailer;
widget/src/windows/nsToolkit.h: static nsWindow* mHoldMouse;
widget/src/windows/nsToolkit.h: static PRBool gIgnoreNextCycle;
widget/src/windows/nsTooltipWidget.h: static BOOL sTooltipWidgetIsRegistered;
widget/src/windows/nsWindow.h: static nsWindow* gCurrentWindow;
widget/src/windows/nsWindow.h: static BOOL sIsRegistered;
Updated•26 years ago
|
Assignee: trudelle → kipp
Comment 1•26 years ago
|
||
Most of these are Kipp's, reassigning.
I don't own the widget library; somebody else does. And, I didn't write the
mentioned code now matter what cvs-blame might say. It was written by "dario".
Updated•26 years ago
|
Assignee: trudelle → karnaze
Comment 3•26 years ago
|
||
XPtoolkit team has never touched this file. We own the menu files in that
directory, but not this. trying karnaze
Reporter | ||
Comment 4•26 years ago
|
||
RX tasks aren't going to make M3.
close the reentrantcy tracking tasks if this specific area has been looked at
and doesn't seem to be a problem. Otherwise each of these areas
still need some looking at.
Updated•26 years ago
|
Assignee: karnaze → trudelle
Comment 5•26 years ago
|
||
Rod and Kevin are the only ones I know of who have owned the widget code in the
past. It makes more sense for XPFE to own it than layout. Peter, if you don't
agree with this give me a call instead of us playing bugzilla tag.
Comment 6•26 years ago
|
||
After talking this over with several members of my team, I'm not sure why we
should own it. Our menu code is moving elsewhere, and we don't do nsIWidgets.
Updated•26 years ago
|
Assignee: trudelle → rods
Comment 7•26 years ago
|
||
reassigning to rods as p2 for m4
Updated•26 years ago
|
QA Contact: 1680
Updated•26 years ago
|
Target Milestone: M4 → M5
Comment 8•26 years ago
|
||
moving to m5
Assignee | ||
Updated•26 years ago
|
Target Milestone: M5 → M6
Assignee | ||
Comment 9•26 years ago
|
||
Moving to M6
Assignee | ||
Updated•26 years ago
|
Target Milestone: M6 → M8
Assignee | ||
Comment 10•26 years ago
|
||
Changing to M8
Assignee | ||
Updated•26 years ago
|
Target Milestone: M8 → M10
Assignee | ||
Updated•26 years ago
|
Status: NEW → RESOLVED
Closed: 26 years ago
Resolution: --- → REMIND
Assignee | ||
Comment 11•26 years ago
|
||
I am not enough of a Window's DLL guru to answer this question. I need
someone's help! I am accepting it as a "remind".
Comment 12•26 years ago
|
||
I don't think you need to be a DLL guru here (maybe I'm wrong). Also, it could
well be that the code in question is already reentrant, in spite of having
static data; or it may not need to be reentrant, because it can't be active on
the stack when re-activated from a modal dialog (to draw a widget or whatever).
The thing to look out for is data dependencies, and also anti-dependencies, that
span a call out of the module to a function that could nest an event loop (any
function that might run JS could nest an event loop).
/be
Comment 13•24 years ago
|
||
reopening and marking Future...
Status: RESOLVED → REOPENED
Resolution: REMIND → ---
Target Milestone: M10 → Future
Assignee | ||
Comment 14•24 years ago
|
||
I am leaving this future for now.
Assignee | ||
Updated•24 years ago
|
Status: REOPENED → ASSIGNED
Assignee | ||
Updated•23 years ago
|
Priority: P2 → P4
Comment 15•17 years ago
|
||
I don't think this list of a few static variables in widget/src/windows/ is useful at this point for helping make Gecko multithreaded (if we ever decide to go that route). If we ever want to do that, we'd need to start this type of analysis (and more) over again.
So marking as invalid (not because it's strictly invalid, but because I don't think we should have a bug report on such a small part of the problem).
Status: ASSIGNED → RESOLVED
Closed: 26 years ago → 17 years ago
Resolution: --- → INVALID
You need to log in
before you can comment on or make changes to this bug.
Description
•