Hi,

when I start lav2divx, it dumps core immediately. Apparently I have a
version mismatch with the avifile library.

(gdb) bt
#0  0x40bc9baf in _IO_vfprintf (s=0xbfffd37c, 
    format=0x804efc0 "This binary was compiled for Avifile version %s but the library 
is %s", ap=0xbfffd8cc) at vfprintf.c:1259
#1  0x40bd6780 in _IO_vsnprintf (
    string=0xbfffd48c "This binary was compiled for Avifile version ", 
    maxlen=1023, 
    format=0x804efc0 "This binary was compiled for Avifile version %s but the library 
is %s", args=0xbfffd8c8) at vsnprintf.c:129
#2  0x0804bf38 in mjpeg_logv ()
#3  0x0804c046 in mjpeg_error_exit1 ()
[...]

lav2divx.cpp has:

if ( GetAvifileVersion (  ) != AVIFILE_VERSION )
{
        mjpeg_error_exit1 ( "This binary was compiled for Avifile version %s but the 
library is %s"
                , AVIFILE_VERSION
                , GetAvifileVersion (  ) );
}

The "%s" seem to be wrong, since both AVIFILE_VERSION and
GetAvifileVersion() are ints.

According to the definition of AVIFILE_VERSION:

#define AVIFILE_VERSION  ((AVIFILE_MAJOR_VERSION << 16) + (AVIFILE_MINOR_VERSION << 8) 
+ AVIFILE_PATCHLEVEL)

this should probably be something like this:

if ( GetAvifileVersion (  ) != AVIFILE_VERSION )
{
  mjpeg_error_exit1 ( "This binary was compiled for Avifile version %d.%d.%d but the 
library is %d.%d.%d"
                      , AVIFILE_VERSION >> 16
                      , (AVIFILE_VERSION >> 8) & 0xff
                      , AVIFILE_VERSION & 0xff
                      , GetAvifileVersion (  ) >> 16
                      , (GetAvifileVersion (  ) >> 8) & 0xff
                      , GetAvifileVersion (  ) & 0xff );
}

With that, I get:

**ERROR: [lt-lav2divx] This binary was compiled for Avifile version 0.70.34 but the 
library is 0.7.34

Apparently, something is a bit wrong with that AVIFILE_VERSION or
GetAvifileVersion(), but lav2divx doesn't dump core anymore.

MJPEGTools version 1.6.1, lav2divx version 0.0.23 (2002/03/02), 
Avifile RELEASE-0.7.34-030325-01:36-2.95.3.

Regards...
                Michael

--- lavtools/lav2divx.cpp~      Tue Mar 25 16:31:42 2003
+++ lavtools/lav2divx.cpp       Tue Mar 25 17:01:55 2003
@@ -289,9 +289,13 @@
 
        if ( GetAvifileVersion (  ) != AVIFILE_VERSION )
        {
-               mjpeg_error_exit1 ( "This binary was compiled for Avifile version %d 
but the library is %d"
-                       , AVIFILE_VERSION
-                       , GetAvifileVersion (  ) );
+               mjpeg_error_exit1 ( "This binary was compiled for Avifile version 
%d.%d.%d but the library is %d.%d.%d"
+                       , AVIFILE_VERSION >> 16
+                       , (AVIFILE_VERSION >> 8) & 0xff
+                       , AVIFILE_VERSION & 0xff
+                       , GetAvifileVersion (  ) >> 16
+                       , (GetAvifileVersion (  ) >> 8) & 0xff
+                       , GetAvifileVersion (  ) & 0xff );
        }
 
        ( void ) mjpeg_default_handler_verbosity ( 1 );
--- lavtools/yuv2divx.cpp~      Mon Apr 29 16:36:00 2002
+++ lavtools/yuv2divx.cpp       Tue Mar 25 17:03:38 2003
@@ -340,9 +340,13 @@
 
        if ( GetAvifileVersion (  ) != AVIFILE_VERSION )
        {
-               mjpeg_error_exit1 ( "This binary was compiled for Avifile version %s 
but the library is %s"
-                       , AVIFILE_VERSION
-                       , GetAvifileVersion (  ) );
+               mjpeg_error_exit1 ( "This binary was compiled for Avifile version 
%d.%d.%d but the library is %d.%d.%d"
+                       , AVIFILE_VERSION >> 16
+                       , (AVIFILE_VERSION >> 8) & 0xff
+                       , AVIFILE_VERSION & 0xff
+                       , GetAvifileVersion (  ) >> 16
+                       , (GetAvifileVersion (  ) >> 8) & 0xff
+                       , GetAvifileVersion (  ) & 0xff );
        }
 
        ( void ) mjpeg_default_handler_verbosity ( 1 );
--- lavtools/divxdec.cpp~       Mon Apr 29 16:36:00 2002
+++ lavtools/divxdec.cpp        Tue Mar 25 17:03:13 2003
@@ -1316,9 +1316,13 @@
 
        if ( GetAvifileVersion (  ) != AVIFILE_VERSION )
        {
-               mjpeg_error_exit1 ( "This binary was compiled for Avifile version %.2f 
but the library is %.2f"
-                               , AVIFILE_VERSION
-                               , GetAvifileVersion () );
+               mjpeg_error_exit1 ( "This binary was compiled for Avifile version 
%d.%d.%d but the library is %d.%d.%d"
+                       , AVIFILE_VERSION >> 16
+                       , (AVIFILE_VERSION >> 8) & 0xff
+                       , AVIFILE_VERSION & 0xff
+                       , GetAvifileVersion (  ) >> 16
+                       , (GetAvifileVersion (  ) >> 8) & 0xff
+                       , GetAvifileVersion (  ) & 0xff );
        }
 
        ( void ) mjpeg_default_handler_verbosity ( 3 );



-------------------------------------------------------
This SF.net email is sponsored by:
The Definitive IT and Networking Event. Be There!
NetWorld+Interop Las Vegas 2003 -- Register today!
http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en
_______________________________________________
Mjpeg-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mjpeg-users

Reply via email to