Re: Agent crashes when sending article

2003-05-29 Thread Rein Klazes
On Wed, 28 May 2003 14:42:41 +0200, you wrote:

> On Wed, 28 May 2003 12:06:45 +0200, Rein Klazes <[EMAIL PROTECTED]> wrote:
> 
> >The attached patch corrects the behaviour to what I see under Windows. 
> >
> >Please give it a try.
> 
> Unfortunately I sent my previous mail to early. Agent just crashed again when
> sending email. I have to see if I can find a reliable scenario because it
> seems that at least the one with sending to a non-existing newsgroup now seems
> to work. I'll check that again as soon as I have more time.

The backtrace should be different in this case. If you could post that.

Rein. 
-- 
Rein Klazes
[EMAIL PROTECTED]



Re: Agent crashes when sending article

2003-05-29 Thread Gerhard W. Gruber
On Wed, 28 May 2003 12:06:45 +0200, Rein Klazes <[EMAIL PROTECTED]> wrote:

>The attached patch corrects the behaviour to what I see under Windows. 

What I forgot to mention in my previous post. The crash only occurs if you
send the mail and that's it. Agent checks for incoming mails at that time. If
there is a mail available and it is downloaded it doesn't crash and everything
works fine.

-- 
Gerhard Gruber

Für jedes menschliche Problem gibt es immer eine einfache Lösung:
Klar, einleuchtend und falsch. (Henry Louis Mencken)




Re: Agent crashes when sending article

2003-05-29 Thread Gerhard W. Gruber
On Wed, 28 May 2003 12:06:45 +0200, Rein Klazes <[EMAIL PROTECTED]> wrote:

>Agent dies when handling a WM_SYSKEYUP message for the release of the
>ALT key. 
>I checked under real windows. There this message is not sent, but a
>WM_KEYUP message instead.
>
>The attached patch corrects the behaviour to what I see under Windows. 
>
>Please give it a try.

I don't know if I have only a bad run right now, but since I activated your
patch now I have the crash always when sending a mail. From what you wrote,
though, I don't think that the patch itself should do this, but it could be
that there is some other bug as well, which causes this.
But I can't say for sure. I had several weeks now, not a single crash, so that
I thought that it is fixed already. On the other hands I had times when it
crashed on every single mail, so this could be normal so far. :)

>From what I managed to debug so far I noticed that some memory was
overwritten. I set a breakpoint in WINPROC_CallWindow and check the lParam
wich was ok (msg = 0x411). but when it came to the crash after that breakpoint
hte memory lParam was pointing to was overwritten with a string. Before that
it contained two pointers. the first pointer is still intact, but the second
one is overwritten with a string "ent-format". This string is of course
interpreted as pointer and referenced as such. Maybe that helps you a bit.

-- 
Gerhard Gruber

Für jedes menschliche Problem gibt es immer eine einfache Lösung:
Klar, einleuchtend und falsch. (Henry Louis Mencken)




Re: Agent crashes when sending article

2003-05-28 Thread Gerhard W. Gruber
On Wed, 28 May 2003 12:06:45 +0200, Rein Klazes <[EMAIL PROTECTED]> wrote:

>The attached patch corrects the behaviour to what I see under Windows. 
>
>Please give it a try.

Unfortunately I sent my previous mail to early. Agent just crashed again when
sending email. I have to see if I can find a reliable scenario because it
seems that at least the one with sending to a non-existing newsgroup now seems
to work. I'll check that again as soon as I have more time.

-- 
Gerhard Gruber

Für jedes menschliche Problem gibt es immer eine einfache Lösung:
Klar, einleuchtend und falsch. (Henry Louis Mencken)




Re: Agent crashes when sending article

2003-05-28 Thread Gerhard W. Gruber
On Wed, 28 May 2003 12:06:45 +0200, Rein Klazes <[EMAIL PROTECTED]> wrote:

>Agent dies when handling a WM_SYSKEYUP message for the release of the
>ALT key. 
>I checked under real windows. There this message is not sent, but a
>WM_KEYUP message instead.
>
>The attached patch corrects the behaviour to what I see under Windows. 
>
>Please give it a try.

Thanks. It seems to work. I just tested my scenario and it didn't crash. I
think this patch has another side effect that I reported earlier, but was not
that much of a problem. Because when I use -S for sending mails (which I
always do) then the menu was always activated afterwards because it noticed
the ALT key wich will activate the menu usually, but didn't release it. Thus I
always had to press the ESC key after sending a mail to remove the state from
the menu (I hope you know what I mean :) ). This appears to be also fixed with
this.

-- 
Gerhard Gruber

Für jedes menschliche Problem gibt es immer eine einfache Lösung:
Klar, einleuchtend und falsch. (Henry Louis Mencken)




Re: Agent crashes when sending article

2003-05-28 Thread Rein Klazes
On Fri, 23 May 2003 23:38:44 +0200, you wrote:

>   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)

Agent dies when handling a WM_SYSKEYUP message for the release of the
ALT key. 
I checked under real windows. There this message is not sent, but a
WM_KEYUP message instead.

The attached patch corrects the behaviour to what I see under Windows. 

Please give it a try.

Rein. 
-- 
Rein Klazes
[EMAIL PROTECTED]
--- wine/windows/input.c2003-05-11 08:27:59.0 +0200
+++ mywine/windows/input.c  2003-05-28 11:39:03.0 +0200
@@ -54,6 +54,7 @@
 
 BYTE InputKeyStateTable[256];
 BYTE AsyncKeyStateTable[256];
+BYTE SysCharacter = 0;
 
 /* Storage for the USER-maintained mouse positions */
 static DWORD PosX, PosY;
@@ -151,8 +152,12 @@
 
 if (ki->dwFlags & KEYEVENTF_KEYUP )
 {
-BOOL sysKey = (InputKeyStateTable[VK_MENU] & 0x80) &&
-  !(InputKeyStateTable[VK_CONTROL] & 0x80);
+BOOL sysKey = FALSE;
+if( (InputKeyStateTable[VK_MENU] & 0x80) && !(InputKeyStateTable[VK_CONTROL] 
& 0x80)) {
+if(  SysCharacter == VK_MENU || (ki->wVk != VK_MENU))
+sysKey = TRUE;
+SysCharacter = 0; 
+}
 InputKeyStateTable[ki->wVk] &= ~0x80;
 keylp.lp1.previous = 1;
 keylp.lp1.transition = 1;
@@ -166,8 +171,13 @@
 InputKeyStateTable[ki->wVk] |= 0x80;
 AsyncKeyStateTable[ki->wVk] |= 0x80;
 
-message = (InputKeyStateTable[VK_MENU] & 0x80) && 
!(InputKeyStateTable[VK_CONTROL] & 0x80)
-  ? WM_SYSKEYDOWN : WM_KEYDOWN;
+if( (InputKeyStateTable[VK_MENU] & 0x80) && !(InputKeyStateTable[VK_CONTROL] 
& 0x80)) {
+message = WM_SYSKEYDOWN;
+SysCharacter = ki->wVk;
+} else {
+message = WM_KEYDOWN;
+/* SysCharacter = 0; */
+}
 }
 
 keylp.lp1.context = (InputKeyStateTable[VK_MENU] & 0x80) != 0; /* 1 if alt */