Boost logo

Boost Users :

From: Snaury (snaury_at_[hidden])
Date: 2005-05-05 02:23:28


Hello, boost-users,

There is a bug in file `filent.c' in function `file_archscan', which causes long .o files in archives invisible to jam, and thus jam always recompiles such .o files, when using, for instance, mingw. The problem is in microsoft's coff definition of stringtables in archives, in which each name must be ended by '\0' versus (linux?) coff, where '\n' is used instead. The following patch is trivial, and I hope someone with cvs access can apply it. Btw, the same 'bug' is in current perforce's jam.

diff -druN boost-jam-3.1.10/filent.c boost-jam-3.1.10-df/filent.c
--- boost-jam-3.1.10/filent.c Tue Jun 1 09:45:14 2004
+++ boost-jam-3.1.10-df/filent.c Tue May 3 16:07:51 2005
@@ -251,7 +251,8 @@
                 */
 
                 name = string_table + atoi( ar_hdr.ar_name + 1 );
- endname = name + strlen( name );
+ for( endname = name; *endname && *endname != '\n'; ++endname )
+ /* nothing */;
             }
             else
             {


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net