Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are
spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the
password reset link.
Due to spam on this forum, all posts now need moderator approval.
Entire forum
➜ MUSHclient
➜ Bug reports
➜ Pre-release build v5.05-pre fails to receive text sometimes
Pre-release build v5.05-pre fails to receive text sometimes
|
It is now over 60 days since the last post. This thread is closed.
Refresh page
Pages: 1 2
Posted by
| Worstje
Netherlands (899 posts) Bio
|
Date
| Wed 01 Feb 2017 11:20 PM (UTC) Amended on Wed 01 Feb 2017 11:23 PM (UTC) by Worstje
|
Message
| Continued from the WindowMenu suggestion topic to unclutter things. (http://mushclient.com/forum/?id=13909&page=999)
Sorry about being unclear in my last response. I had some people renovating my house and pretty much didn't sleep, so I was rather tired and I mostly just wanted to get the information out to you guys to the point where I didn't re-read and try to make sense of my own post.
The Fiendish-automated build is the only one to exhibit the issue. I send text to it, but text stops coming back after logging in. But some game messages do show sometimes, it is rather inconsistent.
Nick's 5.05-pre build (lacks the '-pre' marker code-wise but that is no doubt a silly build-related detail) works just fine for as far I can tell.
My testing method was exactly the same: world has all triggers off, no script file and no plugins loaded. Opened straight after starting MUSHclient. Go through the autologin, and do an @emit command for testing purposes, which then either shows output or does not depending on which build I'm using.
@Nick: I didn't have your e-mail stored anywhere, nor did I want to spam you with logs you didn't ask for. (I sorta figured it was an issue with Fiendish build system at that point.) Since I separated the logs into two separate files for diffing purposes I didn't really consider using the forums for it.
But since the logs aren't long, I'll probably just message you both in a few minutes.
Edit: Actually, I can't. The forums decided there's too many bytes even for a single packet log. Sorry. :-/ | Top |
|
Posted by
| Fiendish
USA (2,537 posts) Bio
Global Moderator |
Date
| Reply #1 on Wed 01 Feb 2017 11:24 PM (UTC) Amended on Wed 01 Feb 2017 11:28 PM (UTC) by Fiendish
|
Message
|
Quote: Nick's 5.05-pre build (lacks the '-pre' marker code-wise but that is no doubt a silly build-related detail) works just fine for as far I can tell.
GOOD! (But also wtf?)
Quote: @Nick: I didn't have your e-mail stored anywhere, nor did I want to spam you with logs you didn't ask for. (I sorta figured it was an issue with Fiendish build system at that point.) Since I separated the logs into two separate files for diffing purposes I didn't really consider using the forums for it.
Don't worry. I emailed it to him just now.
Nick, first test what say we undo the switch to fp:fast? (delete '<FloatingPointModel>Fast</FloatingPointModel>')
https://github.com/nickgammon/mushclient/commit/89606e97f02e033d18492330be96df3bd7ab3793#diff-b79a31ac6bbc21f184eeebb57dc4bffcR140 |
https://github.com/fiendish/aardwolfclientpackage | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #2 on Thu 02 Feb 2017 04:17 AM (UTC) |
Message
|
Quote:
GOOD! (But also wtf?)
I just renamed the file, it wouldn't have had the "-pre" in the version embedded in the code.
I removed that line, and it is recompiling as we speak.
(I doubt this is the issue, but whatever). |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #3 on Thu 02 Feb 2017 04:18 AM (UTC) |
Message
|
Quote:
Text stops coming in. Some stuff does show.
I'm not sure what you mean by "stuff" there.
Anyway, I have had a trickle of reports about data not arriving, in the past. I would say, from memory, two or three.
Obviously things normally work or the client would be unusable.
It is possible the more recent libraries do something a bit differently that is triggering an underlying bug in the code.
First, the basic comms routines were one of the first things I wrote (naturally) and possibly there is some misunderstanding of how the code is supposed to interface with the underlying Windows messages.
Second, data reception is event-triggered, so basically the client waits for incoming data (plus of course key presses and mouse movements).
If the event for a new packet is not sent (or somehow lost) then the client will not realize there is something to do. Possibly you get larger, or smaller, packets than normal due to some router configuration. This might trigger some issue that the code should handle, but does not.
Since the code is open-source anyone is welcome to browse it and make suggestions for things they think might be wrong.
In particular the file worldsock.cpp would be a place to look at.
The code to actually receive incoming data is very small:
void CWorldSocket::OnReceive(int nErrorCode)
{
// CSocket::OnReceive(nErrorCode);
m_pDoc->ProcessPendingRead();
}
Maybe the error code needs looking at? Maybe if there is an error something should be sent to "clear" the error? I'm open to suggestions.
BTW - maybe make a new post under Bug Reports to keep this subject away from the stuff about menu alignment. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #4 on Thu 02 Feb 2017 04:23 AM (UTC) |
Message
| I see from your trace you got *something* back:
Incoming packet: 4 (1 bytes) at woensdag, februari 01, 2017, 8:59:29
< 3c
Incoming packet: 4 (1 bytes) at woensdag, februari 01, 2017, 8:59:29
> 3e
Sent packet: 10 (19 bytes) at woensdag, februari 01, 2017, 8:59:36
@emit YO DE LA L 40 65 6d 69 74 20 59 4f 20 44 45 20 4c 41 20 4c
A.. 41 0d 0a
Incoming packet: 5 (2 bytes) at woensdag, februari 01, 2017, 8:59:58
ÿñ ff f1
That last packet is IAC NOP. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #5 on Thu 02 Feb 2017 05:02 AM (UTC) Amended on Thu 02 Feb 2017 05:06 AM (UTC) by Nick Gammon
|
Message
| I've pushed another pre-release. This time it loops getting data from the socket until there isn't any more. This may or may not fix things (it might make them worse). See how that goes.
Get it from the GitHub pre-release place:
https://github.com/nickgammon/mushclient/releases |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Worstje
Netherlands (899 posts) Bio
|
Date
| Reply #6 on Thu 02 Feb 2017 01:18 PM (UTC) |
Message
| Sad to say, that did not fix it.
I have simplified my testing method to completely rule out my World file.
New simplified testcase:
1. Connection -> Quick Connect.
2a. Server: play.arxmush.org
2b. Port: 3000
2c. OK
3. Login by typing 'guest'.
If fixed? Lots of welcome text for newbies appears.
If bug? No output whatsoever.
Honestly, the difference is pretty dang obvious.
Hopefully that will help you guys figure it out with the aid of a debugger, since I realize relying on me non-stop isn't the most useful thing ever. | Top |
|
Posted by
| Fiendish
USA (2,537 posts) Bio
Global Moderator |
Date
| Reply #7 on Thu 02 Feb 2017 02:11 PM (UTC) |
Message
| Packet debug diff: https://www.diffchecker.com/qixzpsbx |
https://github.com/fiendish/aardwolfclientpackage | Top |
|
Posted by
| Worstje
Netherlands (899 posts) Bio
|
Date
| Reply #8 on Thu 02 Feb 2017 02:17 PM (UTC) |
Message
| Yay for reproduction. :D | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #9 on Thu 02 Feb 2017 09:23 PM (UTC) |
Message
| |
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #10 on Thu 02 Feb 2017 09:26 PM (UTC) |
Message
|
Worstje said:
Yay for reproduction. :D
I can reproduce it too. That's odd. I can't use the debugger though because the in-house compiled one works. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #11 on Thu 02 Feb 2017 09:41 PM (UTC) |
Message
| I reverted my recent changes to the way I handle comms, after all that worked for about 20 years.
Still no difference. Clearly it's something to do with the newer libraries. (I mean, there isn't a compile-option: "don't make Windows Sockets work" is there?).
Anyway you can test the menu alignment with the version I posted a couple of replies back but compiled by me directly. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #12 on Thu 02 Feb 2017 09:54 PM (UTC) |
Message
| I thought maybe "packet size". I recompiled with a packet buffer of 9000 bytes (compared to 1000 before) as one of your packets was 1024, but no difference. Besides, the 1024 byte packet is not the first one that is not received.
From Fiendish's diff this is the first missing data:
Incoming packet: 4 (6 bytes) at Thursday, February 02, 2017, 3:09:54 PM
ÿú..ÿð ff fa 18 01 ff f0
Sent packet: 9 (10 bytes) at Thursday, February 02, 2017, 3:09:54 PM
ÿú..ANSIÿð ff fa 18 00 41 4e 53 49 ff f0
Incoming packet: 5 (6 bytes) at Thursday, February 02, 2017, 3:09:54 PM
ÿú..ÿð ff fa 18 01 ff f0
Sent packet: 10 (12 bytes) at Thursday, February 02, 2017, 3:09:54 PM
ÿú..MTTS 9ÿð ff fa 18 00 4d 54 54 53 20 39 ff f0
Sent packet: 11 (7 bytes) at Thursday, February 02, 2017, 3:09:57 PM
|
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #13 on Thu 02 Feb 2017 10:34 PM (UTC) |
Message
| Here's some more weird stuff. In fact I am receiving things. If you let the packet debug run for a while you get IAC NOP from time to time:
Incoming packet: 4 (2 bytes) at Friday, February 03, 2017, 9:16:21 AM
ÿñ ff f1
Incoming packet: 5 (2 bytes) at Friday, February 03, 2017, 9:16:51 AM
ÿñ ff f1
Sent packet: 10 (7 bytes) at Friday, February 03, 2017, 9:17:04 AM
guest.. 67 75 65 73 74 0d 0a <-- I tried again
Incoming packet: 6 (2 bytes) at Friday, February 03, 2017, 9:17:21 AM
ÿñ ff f1
It looks like my attempt to send "guest" has failed, hence the server is waiting for me to reply. However I fired up Wireshark and it looks like sends are in fact working. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,158 posts) Bio
Forum Administrator |
Date
| Reply #14 on Thu 02 Feb 2017 10:37 PM (UTC) |
Message
| So it could be a server issue - they are not processing the "guest" login. However the packet debug from Fiendish is identical up to that point, so the server has received exactly the same stuff. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).
To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.
68,264 views.
This is page 1, subject is 2 pages long: 1 2
It is now over 60 days since the last post. This thread is closed.
Refresh page
top