@@ -210,7 +210,8 @@ var Stomp = module.exports = function () {
210
210
}
211
211
}
212
212
else {
213
- sendCommand ( 'SUBSCRIBE' , headers ) ;
213
+ if ( headers . destination . indexOf ( '/temp-queue/' ) === - 1 )
214
+ sendCommand ( 'SUBSCRIBE' , headers ) ;
214
215
subscribedTo [ destination ] = { enabled : true , callback : callback } ;
215
216
log . debug ( 'subscribed to: ' + destination + ' with headers ' + sys . inspect ( headers ) ) ;
216
217
}
@@ -497,6 +498,7 @@ var Stomp = module.exports = function () {
497
498
*/
498
499
var parseHeaders = function ( rawHeaders ) {
499
500
log . debug ( 'rawHeaders' , rawHeaders ) ;
501
+
500
502
var headers = { } ;
501
503
var headersSplit = rawHeaders . split ( '\n' ) ;
502
504
@@ -662,8 +664,13 @@ var Stomp = module.exports = function () {
662
664
* @returns {Boolean } return *true* if the frame is a message; otherwise, *false*
663
665
*/
664
666
var shouldRunMessageCallback = function ( frame ) {
665
- var subscription = subscribedTo [ frame . headers . destination ] ;
666
- if ( frame . headers . destination !== null && subscription !== null ) {
667
+ var subscription = null ;
668
+ if ( frame . headers . subscription )
669
+ subscription = subscribedTo [ frame . headers . subscription ] ;
670
+ else
671
+ subscription = subscribedTo [ frame . headers . destination ] ;
672
+
673
+ if ( frame . headers . destination !== null && subscription !== null && typeof ( subscription ) !== 'undefined' ) {
667
674
if ( subscription . enabled && subscription . callback !== null && typeof ( subscription . callback ) === 'function' ) {
668
675
subscription . callback ( frame . body , frame . headers ) ;
669
676
}
0 commit comments