# HG changeset patch # User bertrand # Date 1031431029 0 # Node ID 10f629e33ee6e9237ce3d4b7ab6fd45cb804374c # Parent 8162d2f591f9c2d2eb6b4eefd3e04b8f407aa1c7 Fixed an unknown command. Looks like it's a new command from WMS9. Changed all the exit by return -1 diff -r 8162d2f591f9 -r 10f629e33ee6 libmpdemux/asf_mmst_streaming.c --- a/libmpdemux/asf_mmst_streaming.c Sat Sep 07 20:30:17 2002 +0000 +++ b/libmpdemux/asf_mmst_streaming.c Sat Sep 07 20:37:09 2002 +0000 @@ -413,7 +413,7 @@ if ( (pre_header[7] != 0xb0) || (pre_header[6] != 0x0b) || (pre_header[5] != 0xfa) || (pre_header[4] != 0xce) ) { printf ("missing signature\n"); - exit (1); + return -1; } command = get_32 (data, 24) & 0xFFFF; @@ -426,10 +426,16 @@ printf ("everything done. Thank you for downloading a media file containing proprietary and patentend technology.\n"); return 0; } + else if (command == 0x21 ) + { + // Looks like it's new in WMS9 + // Unknown command, but ignoring it seems to work. + return 0; + } else if (command != 0x05) { printf ("unknown command %02x\n", command); - exit (1); + return -1; } } } @@ -482,7 +488,8 @@ if( ret<0 ) { - printf("nop_streaming_read error : %s\n",strerror(errno)); + printf("get_media_packet error : %s\n",strerror(errno)); + return -1; }