Issue 74417 - aquavcl01: mouse over scrollbar crash
Summary: aquavcl01: mouse over scrollbar crash
Status: CLOSED FIXED
Alias: None
Product: porting
Classification: Code
Component: MacOSX (show other issues)
Version: OOo 2.2
Hardware: All Mac OS X, all
: P3 Trivial (vote)
Target Milestone: OOo 2.3
Assignee: eric.bachard
QA Contact: issues@porting
URL:
Keywords: aqua
Depends on:
Blocks: 74396
  Show dependency tree
 
Reported: 2007-02-11 02:03 UTC by sparcmoz
Modified: 2007-07-09 22:36 UTC (History)
2 users (show)

See Also:
Issue Type: PATCH
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
aqua without tool tips (383.21 KB, image/png)
2007-02-11 05:25 UTC, sparcmoz
no flags Details
test for null ScrollBarVariant (1.52 KB, patch)
2007-02-11 11:06 UTC, sparcmoz
no flags Details | Diff
Another variant of the patch (1.03 KB, patch)
2007-02-11 11:41 UTC, pavel
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description sparcmoz 2007-02-11 02:03:35 UTC
m202 aqua - start wither way with or without native windows. 
Turn off tooltips in Tools-Options-OOo-General-Help - uncheck Tips.
Now this crash is reproducible - just mouse over a scroll bar.

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_PROTECTION_FAILURE (0x0002) at 0x00000000

Thread 0 Crashed:
0   com.apple.CoreFoundation       	0x9080b714 CFStringGetLength + 17
1   com.apple.CoreFoundation       	0x9081d13c CFStringCompare + 19
2   libvcl680mxi.dylib             	0x0122a634 component_getFactory + 25736
3   libvcl680mxi.dylib             	0x0112d4da
SalGraphics::HitTestNativeControl(unsigned long, unsigned long, Region const&,
Point const&, SalControlHandle&, unsigned char&, OutputDevice const*) + 230
4   libvcl680mxi.dylib             	0x011c0adf
Window::HitTestNativeControl(unsigned long, unsigned long, Region const&, Point
const&, unsigned char&) + 205
5   libvcl680mxi.dylib             	0x01204719
ScrollBar::ScrollBar[not-in-charge](Window*, long long) + 475
6   libvcl680mxi.dylib             	0x012048f2
ScrollBar::PreNotify(NotifyEvent&) + 144
7   libvcl680mxi.dylib             	0x011b8446 Window::GetPrimarySelection() + 3518
8   libvcl680mxi.dylib             	0x011b9645 Window::GetPrimarySelection() + 8125
9   libvcl680mxi.dylib             	0x011bb501 Window::GetPrimarySelection() + 15993
10  libvcl680mxi.dylib             	0x01226e16 component_getFactory + 11370
11  com.apple.HIToolbox            	0x92dcc7eb
DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1093
12  com.apple.HIToolbox            	0x92dcbe90
SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*,
HandlerCallRec*) + 304
13  com.apple.HIToolbox            	0x92dd30f0 SendEventToEventTarget + 56
14  com.apple.HIToolbox            	0x92dd3589
ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*,
void*) + 1169
15  com.apple.HIToolbox            	0x92dccba2
DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 2044
16  com.apple.HIToolbox            	0x92dcbe90
SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*,
HandlerCallRec*) + 304
17  com.apple.HIToolbox            	0x92dd30f0 SendEventToEventTarget + 56
18  libvcl680mxi.dylib             	0x01232193 component_getFactory + 57319
19  libvcl680mxi.dylib             	0x01013597 Application::Yield(bool) + 83
20  libvcl680mxi.dylib             	0x0101362e Application::Execute() + 84
21  org.openoffice.script          	0x00016109 desktop::Desktop::Main() + 5127
22  libvcl680mxi.dylib             	0x0101892b
InitVCL(com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory>
const&) + 1493
23  libvcl680mxi.dylib             	0x01018a0a SVMain() + 100
24  com.apple.HIToolbox            	0x92e058c2 TimerVector + 31
25  com.apple.CoreFoundation       	0x90829bc9 CFRunLoopRunSpecific + 3341
26  com.apple.CoreFoundation       	0x90828eb5 CFRunLoopRunInMode + 61
27  com.apple.HIToolbox            	0x92dcdb90 RunCurrentEventLoopInMode + 285
28  com.apple.HIToolbox            	0x92dcd297 ReceiveNextEventCommon + 385
29  com.apple.HIToolbox            	0x92e15929 _AcquireNextEvent + 58
30  com.apple.HIToolbox            	0x92e15774 RunApplicationEventLoop + 150
31  libvcl680mxi.dylib             	0x01018ad6 SVMain() + 304
32  libvcl680mxi.dylib             	0x010189b7 SVMain() + 17
33  org.openoffice.script          	0x000032ff main + 95
34  org.openoffice.script          	0x00002c2e start + 258
35  org.openoffice.script          	0x00002b55 start + 41

(Note I built this one with compiler flag ARCH_FLAGS*=--use-cxa-atexit but do
not know if that is relevant)
Comment 1 sparcmoz 2007-02-11 02:04:32 UTC
keyword aqua
Comment 2 sparcmoz 2007-02-11 05:12:31 UTC
I put these lines into aqua/source/gdi/salnativewidgets.cxx:
+CFShowStr(AppleScrollBarType);
+CFShowStr(kCFPreferencesCurrentApplication);
+CFShowStr(ScrollBarVariant);
        if ( !CFStringCompare( ScrollBarVariant, CFSTR("DoubleMax"),
kCFCompareCaseInsensitive))  <-- now line 317

Mouse over scrollbar:
===================

>*>_> SetPointer
Control type is : 60
Control part is : 1

Length 21
IsEightBit 1
HasLengthByte 0
HasNullByte 1
InlineContents 0
Allocator SystemDefault
Mutable 0
Contents 0x1288e54

Length 32
IsEightBit 1
HasLengthByte 0
HasNullByte 1
InlineContents 0
Allocator SystemDefault
Mutable 0
Contents 0x908b7efc
(null)

=================
So we got (null) for ScrollBarVariant.

Thread 0 Crashed:
0   com.apple.CoreFoundation       	0x9080b714 CFStringGetLength + 17
1   com.apple.CoreFoundation       	0x9081d13c CFStringCompare + 19
2   libvcl680mxi.dylib             	0x0122b8ba
AquaSalGraphics::hitTestNativeControl(unsigned long, unsigned long, Region
const&, Point const&, SalControlHandle&, unsigned char&) + 1058
(salnativewidgets.cxx:317)
3   libvcl680mxi.dylib             	0x0112df3a
SalGraphics::HitTestNativeControl(unsigned long, unsigned long, Region const&,
Point const&, SalControlHandle&, unsigned char&, OutputDevice const*) + 270
(salgdilayout.cxx:534)
4   libvcl680mxi.dylib             	0x011c1c9b
Window::HitTestNativeControl(unsigned long, unsigned long, Region const&, Point
const&, unsigned char&) + 205
5   libvcl680mxi.dylib             	0x012058d5 ScrollBar::ImplFindPartRect(Point
const&) + 163
  
Comment 3 sparcmoz 2007-02-11 05:25:41 UTC
Created attachment 42919 [details]
aqua without tool tips
Comment 4 pavel 2007-02-11 08:31:10 UTC
I can't reproduce here with clean aquavcl01.
Comment 5 eric.bachard 2007-02-11 10:01:55 UTC
I can't reproduce this issue here Intel / clean m202
Comment 6 sparcmoz 2007-02-11 11:05:22 UTC
defaults read -g AppleScrollBarVariant
2007-02-11 22:03:01.508 defaults[17790] 
The domain/default pair of (kCFPreferencesAnyApplication, AppleScrollBarVariant)
does not exist

defaults read | grep Scroll
        ScrollH = 1; 
        ScrollS = 4; 
        ScrollSSize = 30; 
        ScrollV = 1; 
            ComputerScrollPosition = {h = 0; v = 0; }; 
            TrashIconViewScrollPosition = {h = 0; v = 0; }; 
                ScrollPosition = {h = 0; v = 0; }; 
        AppleScrollAnimationEnabled = 0; 
        ScrollAnimation = 1; 
        ScrollAnimationFrameRate = 60; 
        ScrollOverlay = 1; 
        closeViewScrollWheelModifiersInt = 262144; 
        closeViewScrollWheelToggle = 1; 

Patch attached to test for null value in ScrollBarVariant. 
Comment 7 sparcmoz 2007-02-11 11:06:28 UTC
Created attachment 42925 [details]
test for null ScrollBarVariant
Comment 8 pavel 2007-02-11 11:41:44 UTC
Created attachment 42926 [details]
Another variant of the patch
Comment 9 pavel 2007-02-11 11:42:27 UTC
I attached another variant of the patch.
Comment 10 eric.bachard 2007-02-11 11:54:31 UTC
Patch copmmited and issue fixed in aquavcl01

ericb->sparcmoz

Thanks to have reported this issue :-)

May you confirm this issue is fixed for you and set it as verified ?
Comment 11 eric.bachard 2007-02-11 18:51:45 UTC
.
Comment 12 sparcmoz 2007-02-11 22:40:27 UTC
Verified - the mouse over scrollbar crash is now fixed in aquavcl01. 
There is a long delay (~17 seconds) to redraw the scrollbaar after a 1cm drag
down of the vertical scrollbar with a writer document, but that will be a
different issue. 
Comment 13 pavel 2007-06-28 11:08:15 UTC
Set target to 2.3.
Comment 14 eric.bachard 2007-07-09 22:36:28 UTC
Still ok with SRC680_m220

Closing