Some time ago I posted that Agent crashes when sending an email. At this time
the crash was sometimes quite frequently and sometimes it worked well for an
extended period of time. Now I found a scenario which will cause this crash
rather reliably (it failed only one time for me when I tested it).
Compose an article with a non-existent newsgroup., messagetext and subjectline
doesn't matter I think, and then send this article with <ALT>-S (for
Send-Now).
When the crash occurs ebx contains a pointer that is pointing to some invalid
address (actually it is a string instead of a pointer) which is subsequently
referenced. On each crash the pointer and it's content is the same.
I already run agent with "wine -debugmsg +all" and got a rather huge trace
(about 500MB) so if you need any info I can extract it from this. I tried to
anlyze the problem but I have problems interpreting the trace so it doesn't
tell me much. I would investigate this myself but I need some input how the
best way to approach this. winedbg is not much help to me for now. Or can you
set memory access breakpoints like in Softice?
Backtrace:
=>0 0x005b507b (agent.exe.@InitWndProc$qp6HWND__uiuil+0x202cd in
D:\home\agent\agent.exe) (ebp=406b1cd8)
1 0x0046cd45 (agent.exe.@ENUMERATEACTIVEWNDS$QP6HWND__P9TENUMINFO+0x39175 in
D:\home\agent\agent.exe) (ebp=406b1f60)
2 0x0040e1ba (agent.exe.__GetExceptDLLinfo+0xd14c in
D:\home\agent\agent.exe) (ebp=406b1f74)
3 0x0058e5c3 (agent.exe.@WinTimerStatics@Func$qp6HWND__uiuiul+0xe35b in
D:\home\agent\agent.exe) (ebp=406b1f88)
4 0x00531d64
(agent.exe.@MyDdeCallback$quiuip7HCONV__p5HSZ__t4p10HDDEDATA__ulul+0x17d5c in
D:\home\agent\agent.exe) (ebp=406b1fd8)
5 0x004dacf4 (agent.exe.@PropdlgKbdProc$qiuil+0x261fc in
D:\home\agent\agent.exe) (ebp=406b2024)
6 0x00598543 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x3795 in
D:\home\agent\agent.exe) (ebp=406b207c)
7 0x005985a0 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x37f2 in
D:\home\agent\agent.exe) (ebp=406b20b0)
8 0x0059865f (agent.exe.@InitWndProc$qp6HWND__uiuil+0x38b1 in
D:\home\agent\agent.exe) (ebp=406b20f8)
9 0x005985c8 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x381a in
D:\home\agent\agent.exe) (ebp=406b2110)
10 0x408141fb (WINPROC_wrapper+0x17 in user32.dll.so) (ebp=406b2134)
11 0x4081429f (WINPROC_CallWndProc+0x8f(proc=0x416b1fb8, hwnd=0x10025,
msg=0x411, wParam=0x100, lParam=0x4199cac8) [winproc.c:184] in user32.dll.so)
(ebp=406b2164)
12 0x4081a6e8 (CallWindowProcA+0x88(func=0x413b0848, hwnd=0x10025,
msg=0x411, wParam=0x100, lParam=0x4199cac8) [winproc.c:2854] in user32.dll.so)
(ebp=406b218c)
13 0x407fc1da (DispatchMessageA+0x12a(msg=0x406b222c) [message.c:794] in
user32.dll.so) (ebp=406b21d0)
14 0x407dc9f9 (MENU_TrackMenu+0x5e9(hmenu=0x0, wFlags=0x80000000, x=0x0,
y=0x0, hwnd=0x10025, lprect=0x0) [menu.c:2891] in user32.dll.so)
(ebp=406b2248)
15 0x407dce67 (MENU_TrackKbdMenuBar+0x147(hwnd=0x10025, wParam=0xf100,
vkey=0x0) [menu.c:3049] in user32.dll.so) (ebp=406b2278)
16 0x40801266 (NC_HandleSysCommand+0x266(hwnd=0x10025, wParam=0xf100,
lParam=0x0) [nonclient.c:2194] in user32.dll.so) (ebp=406b22a0)
17 0x407f0aee (DEFWND_DefWinProc+0x74e(hwnd=0x10025, msg=0x112,
wParam=0xf100, lParam=0x0) [defwnd.c:534] in user32.dll.so) (ebp=406b2330)
18 0x407f1517 (DefWindowProcA+0x3a7(hwnd=0x10025, msg=0x112, wParam=0xf100,
lParam=0x0) [defwnd.c:863] in user32.dll.so) (ebp=406b2364)
19 0x407f9daf (DefFrameProcA+0xff(hwnd=0x10025, hwndMDIClient=0x10026,
message=0x112, wParam=0xf100, lParam=0x0) [mdi.c:1492] in user32.dll.so)
(ebp=406b2388)
20 0x005a1dea (agent.exe.@InitWndProc$qp6HWND__uiuil+0xd03c in
D:\home\agent\agent.exe) (ebp=406b23a4)
21 0x0059c206 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x7458 in
D:\home\agent\agent.exe) (ebp=406b23c4)
22 0x00598556 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x37a8 in
D:\home\agent\agent.exe) (ebp=406b241c)
23 0x005985a0 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x37f2 in
D:\home\agent\agent.exe) (ebp=406b2450)
24 0x0059865f (agent.exe.@InitWndProc$qp6HWND__uiuil+0x38b1 in
D:\home\agent\agent.exe) (ebp=406b2498)
25 0x005985c8 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x381a in
D:\home\agent\agent.exe) (ebp=406b24b0)
26 0x408141fb (WINPROC_wrapper+0x17 in user32.dll.so) (ebp=406b24d4)
27 0x4081429f (WINPROC_CallWndProc+0x8f(proc=0x416b1fb8, hwnd=0x10025,
msg=0x112, wParam=0xf100, lParam=0x0) [winproc.c:184] in user32.dll.so)
(ebp=406b2504)
28 0x4081a246 (WINPROC_CallProc32WTo32A+0xc6(func=0x416b1fb8, hwnd=0x10025,
msg=0x112, wParam=0xf100, lParam=0x0) [winproc.c:2676] in user32.dll.so)
(ebp=406b2530)
29 0x4081a7c8 (CallWindowProcW+0x88(func=0x413b0856, hwnd=0x10025,
msg=0x112, wParam=0xf100, lParam=0x0) [winproc.c:2890] in user32.dll.so)
(ebp=406b2558)
30 0x4082dc00 (call_window_proc+0xd0(hwnd=0x10025, msg=0x112, wparam=0xf100,
lparam=0x0, unicode=0x1, same_thread=0x1) [message.c:1401] in user32.dll.so)
(ebp=406b25a8)
31 0x4082e85f (SendMessageTimeoutW+0xdf(hwnd=0x10025, msg=0x112,
wparam=0xf100, lparam=0x0, flags=0x0, timeout=0xffffffff, res_ptr=0x406b2630)
[message.c:1791] in user32.dll.so) (ebp=406b2600)
32 0x4082eae9 (SendMessageW+0x39(hwnd=0x10025, msg=0x112, wparam=0xf100,
lparam=0x0) [message.c:1873] in user32.dll.so) (ebp=406b2634)
33 0x407f0c03 (DEFWND_DefWinProc+0x863(hwnd=0x1003e, msg=0x105, wParam=0x12,
lParam=0xc0380001) [defwnd.c:571] in user32.dll.so) (ebp=406b26c8)
34 0x407f1517 (DefWindowProcA+0x3a7(hwnd=0x1003e, msg=0x105, wParam=0x12,
lParam=0xc0380001) [defwnd.c:863] in user32.dll.so) (ebp=406b26fc)
35 0x408141fb (WINPROC_wrapper+0x17 in user32.dll.so) (ebp=406b2720)
36 0x4081429f (WINPROC_CallWndProc+0x8f(proc=0x407f1170, hwnd=0x1003e,
msg=0x105, wParam=0x12, lParam=0xc0380001) [winproc.c:184] in user32.dll.so)
(ebp=406b2750)
37 0x4081a69b (CallWindowProcA+0x3b(func=0x407f1170, hwnd=0x1003e,
msg=0x105, wParam=0x12, lParam=0xc0380001) [winproc.c:2839] in user32.dll.so)
(ebp=406b2778)
38 0x005982ed (agent.exe.@InitWndProc$qp6HWND__uiuil+0x353f in
D:\home\agent\agent.exe) (ebp=406b279c)
39 0x00598556 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x37a8 in
D:\home\agent\agent.exe) (ebp=406b27f4)
40 0x005985a0 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x37f2 in
D:\home\agent\agent.exe) (ebp=406b2828)
41 0x0059865f (agent.exe.@InitWndProc$qp6HWND__uiuil+0x38b1 in
D:\home\agent\agent.exe) (ebp=406b2870)
42 0x005985c8 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x381a in
D:\home\agent\agent.exe) (ebp=406b2888)
43 0x408141fb (WINPROC_wrapper+0x17 in user32.dll.so) (ebp=406b28ac)
44 0x4081429f (WINPROC_CallWndProc+0x8f(proc=0x41998408, hwnd=0x1003e,
msg=0x105, wParam=0x12, lParam=0xc0380001) [winproc.c:184] in user32.dll.so)
(ebp=406b28dc)
45 0x4081a6e8 (CallWindowProcA+0x88(func=0x413b0db8, hwnd=0x1003e,
msg=0x105, wParam=0x12, lParam=0xc0380001) [winproc.c:2854] in user32.dll.so)
(ebp=406b2904)
46 0x407fc1da (DispatchMessageA+0x12a(msg=0x406b2980) [message.c:794] in
user32.dll.so) (ebp=406b2948)
47 0x004db200 (agent.exe.@PropdlgKbdProc$qiuil+0x26708 in
D:\home\agent\agent.exe) (ebp=406b299c)
48 0x004db4c3 (agent.exe.@PropdlgKbdProc$qiuil+0x269cb in
D:\home\agent\agent.exe) (ebp=406b29ec)
49 0x004dadbb (agent.exe.@PropdlgKbdProc$qiuil+0x262c3 in
D:\home\agent\agent.exe) (ebp=406b2a54)
50 0x0040fd3b (agent.exe.__GetExceptDLLinfo+0xeccd in
D:\home\agent\agent.exe) (ebp=406b2e18)
51 0x005a54d4 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x10726 in
D:\home\agent\agent.exe) (ebp=406b2e5c)
52 0x005b40b5 (agent.exe.@InitWndProc$qp6HWND__uiuil+0x1f307 in
D:\home\agent\agent.exe) (ebp=406b2e8c)
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:008f GS:005f
EIP:005b507b ESP:406b1cb4 EBP:406b1cd8 EFLAGS:00210206( R- 00 I - -P1 )
EAX:2d746e65 EBX:4199cacc ECX:4199c268 EDX:406b1d48
ESI:00000000 EDI:4199cac8
--
Gerhard Gruber
Für jedes menschliche Problem gibt es immer eine einfache Lösung:
Klar, einleuchtend und falsch. (Henry Louis Mencken)
Hi,
I try to run a French-learning software called Decouvertes.
Multiple problems I have, hopefully sombodey answers and can help:
o as a starting point I used the ODBC dlls delivered by the program, The
DB stuff works, but I would like
to know, how to implement the wine-builtin ODBC support and which
driver this would be then
o once the program comes up, it generates a Win16Mutex timed out -
message. After a while it allows input and runs
quiet good as it seems
o issueing an other task - dictionary - leedss to an exception related
to:
unimplemented function compobj.dll.COSETSTATE called in32-bit mode in
ole32.dll.so
There is a OLE2.DLL deliverd with the program, which has such a
function built in.
Question is, as a newbie to wine, how to tell wine, not to use
ole32.dll.so builtin but ole2.dll native. Rename ole32.dll.so,
reconfigure and recompile?
I would need assistance badly, probably somebody had a similar problem
before. The purpose for this is, that we try to establish Solaris based
system at
a school environment whithout involving Win2k/Citrix on a seperate
Application-Server. It would help tremendously if somebody becomes
involved with this.
Thank you very much
best regards
Peter Barth
Hi folks,
How come "The top 5 posters of the week" are almost always screwed up:
1. 28 posts in 68K by Alexandre Julliard
2. 35 posts in 89K by Dimitrie O. Paun
3. 18 posts in 41K by Gerhard W. Gruber
4. 11 posts in 91K by Mike Hearn
5. 1 posts in 3K by Shachar Shemesh
--
Dimi.
On Mon, May 26, 2003 at 01:04:49PM +0200, Ferenc Wagner wrote:
> Volume label creation should fail, not create a regular file.
> Similarly for file names ending in a slash (this is actually
> needed for PKSFX Version 2.04g to unpack directory trees).
>
> Feri.
>
> Index: msdos/int21.c
> ===================================================================
> RCS file: /home/wine/wine/msdos/int21.c,v
> retrieving revision 1.93
> diff -u -r1.93 int21.c
> --- msdos/int21.c 19 May 2003 21:40:05 -0000 1.93
> +++ msdos/int21.c 26 May 2003 10:48:21 -0000
> @@ -474,8 +474,18 @@
> }
> static BOOL INT21_CreateFile( CONTEXT86 *context )
> {
> - SET_AX( context, _lcreat16( CTX_SEG_OFF_TO_LIN(context, context->SegDs,
> - context->Edx ), CX_reg(context) ) );
> + LPCSTR path=CTX_SEG_OFF_TO_LIN(context, context->SegDs, context->Edx);
> +
> + if (CX_reg(context) == 0x0008) {
> + SetLastError( ERROR_ACCESS_DENIED );
> + return TRUE;
> + }
> + if (path[strlen(path)-1] == '/')
> + {
> + SetLastError( ERROR_FILE_NOT_FOUND );
> + return TRUE;
> + }
> + SET_AX( context, _lcreat16( path, CX_reg(context) ) );
> return (AX_reg(context) == (WORD)HFILE_ERROR16);
> }
Hmm, and is there a reason to not do it in _lcreat16() instead?
Or is _lcreat16() really "clever" enough to handle volume labels
"properly" if called directly?
Somehow I doubt it... ;)
Or in fact you could walk further up the chain and maybe find that even
_lcreat() should be the function to have that check instead...
(or, for that matter, even CreateFileA and thus CreateFileW...)
So my rough guess is that this should probably be prevented in CreateFileW
instead even.
--
Andreas Mohr Stauferstr. 6, D-71272 Renningen, Germany
Tel. +49 7159 800604 http://mohr.de.tt
Having done some tests on kernel32.dll file functions I have come across a
problem with filenames containing wildcards.
Under Windows (2K) all functions such as DeleteFile, CopyFile, MoveFile,
CreateDirectory and such do return FALSE and normally set the last error
to ERROR_INVALID_NAME (123) if one of the filenames passed in contains a
wildcard (*?).
Wines kernel32 behaves somewhat different. Apart from returning different
last errors in most cases such as:
DeleteFile: ERROR_FILE_NOT_FOUND (2)
CopyFile: ERROR_BAD_PATHNAME (161)
MoveFile: ERROR_FILE_NOT_FOUND (2) when source contains wildcards
which all wouldn't really be a to big issue, there is one thing which
seems not right at all to me:
MoveFile with a valid existing source and a target with wildcards
will create a file on disk containing wildcards in its name. This
certainly can't be the intention!
So according to Win2K it would be probably useful to check in all those
functions for existence of wildcards in the input file paths and refuse
them properly.
I took a look at the kernel32 file.c functions and saw that they usually
all call DOSFS_GetFullName which is supposed to check for valid filenames
and such. Problem is this function is also used in many other places and
I can't get a good idea if those might need to accept wildcards in file
names.
Is there anyone more familiar with the kernel32 implementation in Wine
who could maybe give me some insight if an according change to
DOSFS_GetFullName would be useful or rather cause possible regressions?
Otherwise the best thing to do would probably be to add explicit wildcard
tests to all those file function and refuse with an according last error
set. If I do not get any reactions this is probably what I will do as I'm
somewhat weary to change an internal low level function such as
DOSFS_GetFullName without some third party encouragement.
Rolf Kalbermatter
PS: Other differences I saw, where that Wines MoveFile explicitedly forbids
directories as source with ERROR_ACCESS_DENIED (5) whereas tests under W2K
show that MoveFile happily will rename directories on the same volume, inde-
pendant if they are empty or not.
CopyFile under W2K however will complain with above error ERROR_ACCESS_DENIED (5)
for directories as source. Maybe a possible mix up?
Hello,
Does everyone here agree with Dimi's suggestion
to add :
"If you work over a slow link, you may want to compress the traffic
with -z3. However, there are known bugs in CVS with this compressed
communication mode, make sure you use cvs version 1.11.5 or later."
Just thought I would ask before I sent the patch :))
Tom
I have installed wine on Linux redhat 9.0.
I want install Ms office and OICQ, but when i run:
wine ***.exe
occuring the "SYSDEPS_SpawnThread" and stop, someone can tell me why???
If the redhat 9.0 could support wine very well???
Thanks
Kevin
> How come "The top 5 posters of the week" are almost always screwed up:
Because people like you post from two email accounts.
When I generate the stats it considers each email address
a unique name. So stats get generated for both email
addresses. When Jeremy parses the XML he looks for something
like the person who had the most posts and finds the correct
person but sometimes the stats that get returned are for the
last entry in the xml file. If you look at the xml file you'll
probably notice right away what it's doing.
The scripts I generate stats from are fairly intelligent in
how they parse everything, but for people who post from more
than one account I have to know the offending names and have
sed fix it up.
---------------
Brian Vincent
Copper Mountain Telecom
vincentb(a)coppercolorado.com