| [ Return to Bugs & Features | Roadmap 1.1 | SVN ⇄ GIT ]
STR #1153
Application: | FLTK Library |
Status: | 1 - Closed w/Resolution |
Priority: | 4 - High, e.g. key functionality not working |
Scope: | 2 - Specific to an operating system |
Subsystem: | Core Library |
Summary: | Runtime Errors with FLTK 1.1.7 on 64-bit native WinXP-x64 |
Version: | 1.1.7 |
Created By: | plipa |
Assigned To: | matt |
Fix Version: | 1.1-current (SVN: v5094) |
Update Notification: | |
Trouble Report Files:
Trouble Report Comments:
|
#1 | plipa 09:22 Jan 25, 2006 |
| MatthiasM suggested I file a bug report: I tried to run FLTK 1.1.7 on 64-bit windows (running native WinXP-x64/SP1). The build with out-of-the-box Cmake settings works fine without errors. But at runtime, every one of the example apps in fltk-1.1.7\bin\debug crashes with an error msg (see attached .gif for a screenshot). The debugger stops in sreen_xywh.cxx in function at line screens[num_screens] = mi.rcWork;
static BOOL CALLBACK screen_cb(HMONITOR mon, HDC, LPRECT, LPARAM) {
if (num_screens >= 16) return TRUE;
MONITORINFO mi;
mi.cbSize = sizeof(mi);
// GetMonitorInfo(mon, &mi);
fl_gmi(mon, &mi);
screens[num_screens] = mi.rcWork;
num_screens ++;
return TRUE;
}
The value for mi.rcWork seems fine: mi.rcWork: {top=24574296 bottom=270583312 left=24574352 right=2130571264} tagRECT
Does anyone have experience on x64? Do I need to change some build settings in CMake? Note, I am compiling for a 32-bit app (to run both on x64 and be portable to Wintel 32-bit machines). It might be that I am just doing something stupid (due to my inexperience on 64-bit - maybe I missed an obvious compile flag, etc).
Thanks in advance for any info/hint/fix.
Peter Lipa | |
|
#2 | sebbarre 07:06 Jan 26, 2006 |
| I can see the exact same issue. My guess is that it has nothing to do with your maching being 64 bits (mine is 32). I bet you have two screens, and your are using them in Dual mode (say, nVidia's DualView) to create a single large desktop over your two screens. In my specific case, my screen #2 is actually on the left, my screen #1 is on the right (i.e. I work primarily on my right screen, but I can put some windows on the left one). Try disable dual view mode and run the example using a desktop over just a single screen: this does not crash for me anymore. Of course, this is definitely not a solution, but at least you can reproduce the problem. Note that it does not happen if you build the library using the VisualC++ solution file instead of CMake. Since the CMake team is 10 feet from me, I will forward the problem. | |
|
#3 | matt 19:31 Apr 26, 2006 |
| Did the CMake team come up with a solution on this?
Screen coordinates can actually be negative... . | |
|
#4 | matt 03:38 May 10, 2006 |
| This is an attempt to fix the described issues when querying multiple monitors on defferntly set up Windows environments. Would the posters please test if the new version works. Thanks. | |
|
#5 | matt 03:54 May 10, 2006 |
| If this bug was not resolved, please send a reply mail and I will reopen the issue. | |
[ Return to Bugs & Features ]
|
| |