← Back to team overview

mudlet-makers team mailing list archive

Re: [Bug 734741] Re: ctelnet.cpp decompression fails is compressed data sent with MCCP option

 

Hi BenH,

I've just applied your 2 patches (compression bugfix + mouse selection 
bugfix).
Thank you!

Heiko
Am 03.04.2011 11:08, schrieb BenH:
> Ok some questions as I am not familiar with gmcp or lusternia.
>
> Firstly you do need to add
>
>                     iac = false;
>                     insb = false;
>
>
> I have
>                                  iac = false;
>                                  insb = false;
>                                  goto MAIN_LOOP_END;
>
> Without this state machine is in the wrong state after enabling MCCP and you can't actuall;y connect I think.
>
> I am not sure if this is the problem you are having, or if you can log into the game and you get problems further down the line.
>

-- 
You received this bug notification because you are a member of Mudlet
Makers, which is subscribed to Mudlet.
https://bugs.launchpad.net/bugs/734741

Title:
  ctelnet.cpp decompression fails is compressed data sent with MCCP
  option

Status in Mudlet the MUD client:
  New

Bug description:
  Mudlet 2.0-dev built: January 19, 2011
  OS: kubuntu

  in ctelnet.cpp  void cTelnet::handle_socket_signal_readyRead()

  
                                  initStreamDecompressor();
                                  pBuffer += 3;
                                  //mWaitingForCompressedStreamToStart = false;
                                  int restLength = datalen - i - 3;
                                  if( restLength > 0 )
                                  {
                                      datalen = decompressBuffer( pBuffer, restLength );
                                  }
                                  i = 0;

  this has several errors that cause decompression errors.
  think it needs to be

                                  initStreamDecompressor();
                                  pBuffer += i + 3;  
                                  //mWaitingForCompressedStreamToStart = false;
                                  int restLength = datalen - i -3;
                                  if( restLength > 0 )
                                  {
                                      datalen = decompressBuffer( pBuffer, restLength );
  				     if(datalen !=-1)
  				         datalen += i+3;
  				}
                                  i += 2;


References