[rabbitmq-discuss] Stomp frame not terminated with null	character
    Tony Garnock-Jones 
    tonyg at lshift.net
       
    Thu Sep 18 19:28:53 BST 2008
    
    
  
Hi again,
Jonatan Kallus wrote:
>     As an aside, on re-reading the protocol, I'm wondering if our scan for
>     end of frame is incorrect (or specific to ActiveMQ's implementation).  A
>     frame is terminated by a \x00, and not \x00 + \n according to the spec:
> 
>     "...the null indicates the end of the frame."
This could well be it. Looking at readFrame from Stomp.php:
   do {
       $read = fgets($this->_socket, $rb);
       if ($read === false) {
           $this->_reconnect();
           return $this->readFrame();
       }
       $data .= $read;
       $len = strlen($data);
   } while (($len < 2 || ! ($data[$len - 2] == "\x00" && $data[$len - 1] 
== "\n")));
Did you try changing that last line to something like
($len < 1 || $data[$len - 1] != "\x00");
?
Tony
    
    
More information about the rabbitmq-discuss
mailing list