diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/arbits/slbt_archive_merge.c | 8 | ||||
-rw-r--r-- | src/arbits/slbt_archive_store.c | 8 | ||||
-rw-r--r-- | src/internal/slibtool_tmpfile_impl.c | 5 | ||||
-rw-r--r-- | src/logic/slbt_exec_stoolie.c | 2 |
4 files changed, 15 insertions, 8 deletions
diff --git a/src/arbits/slbt_archive_merge.c b/src/arbits/slbt_archive_merge.c index 5f29235..5ace063 100644 --- a/src/arbits/slbt_archive_merge.c +++ b/src/arbits/slbt_archive_merge.c @@ -180,6 +180,8 @@ int slbt_ar_merge_archives( int64_t osymrefs; int64_t onamestrs; int64_t omemfixup; + int64_t atint; + int64_t aroff; char * base; unsigned char * ubase; @@ -359,7 +361,7 @@ int slbt_ar_merge_archives( memcpy(arhdr,armap->ar_member_data,sizeof(*arhdr)+sarname); nwritten = armap->ar_file_header.ar_time_date_stamp - ? sprintf(arhdr->ar_time_date_stamp,PPRII64,time(0)) + ? sprintf(arhdr->ar_time_date_stamp,PPRII64,(atint = time(0))) : 0; if (nwritten < 0) @@ -401,7 +403,7 @@ int slbt_ar_merge_archives( memcpy(arhdr,arnames->ar_member_data,sizeof(*arhdr)); nwritten = arnames->ar_file_header.ar_time_date_stamp - ? sprintf(arhdr->ar_time_date_stamp,PPRII64,time(0)) + ? sprintf(arhdr->ar_time_date_stamp,PPRII64,(atint = time(0))) : 0; if (nwritten < 0) @@ -591,7 +593,7 @@ int slbt_ar_merge_archives( if (meminfo->ar_file_header.ar_header_attr & AR_HEADER_ATTR_NAME_REF) { nwritten = sprintf( &base[omembers],"/"PPRII64, - namestr - namebase); + (aroff = namestr - namebase)); if (nwritten < 0) SLBT_SYSTEM_ERROR(dctx,0); diff --git a/src/arbits/slbt_archive_store.c b/src/arbits/slbt_archive_store.c index d09a3f0..e303cb7 100644 --- a/src/arbits/slbt_archive_store.c +++ b/src/arbits/slbt_archive_store.c @@ -41,6 +41,8 @@ int slbt_ar_store_archive( struct stat st; int fdat; int fdtmp; + int64_t tint; + int64_t stino; void * addr; char * mark; char * slash; @@ -74,6 +76,7 @@ int slbt_ar_store_archive( fdat = slbt_driver_fdcwd(dctx); addr = buf; + tint = time(0); mark = (slash = strrchr(buf,'/')) ? slash : buf; @@ -89,6 +92,7 @@ int slbt_ar_store_archive( dctx,0); } + stino = st.st_ino; buflen = sizeof(buf) - (mark - buf); nbytes = snprintf( mark, @@ -99,8 +103,8 @@ int slbt_ar_store_archive( ".salt.%p" ".pid.%d" ".tmp", - st.st_ino, - time(0),addr, + stino, + tint,addr, getpid()); if (nbytes >= buflen) diff --git a/src/internal/slibtool_tmpfile_impl.c b/src/internal/slibtool_tmpfile_impl.c index 52c7317..3ed7d3a 100644 --- a/src/internal/slibtool_tmpfile_impl.c +++ b/src/internal/slibtool_tmpfile_impl.c @@ -61,6 +61,7 @@ slbt_hidden int slbt_tmpfile(void) { int fd; void * addr; + int64_t tint; char tmplate[128]; /* try with __fs_tmpfile() */ @@ -73,6 +74,7 @@ slbt_hidden int slbt_tmpfile(void) /* fallback to mk{o}stemp */ addr = tmplate; + tint = time(0); memset(tmplate,0,sizeof(tmplate)); snprintf(tmplate,sizeof(tmplate), "/tmp/" @@ -81,8 +83,7 @@ slbt_hidden int slbt_tmpfile(void) ".salt.%p" ".pid.%d" ".XXXXXXXXXXXX", - time(0), - addr, + tint,addr, getpid()); return slbt_mkostemp(tmplate); diff --git a/src/logic/slbt_exec_stoolie.c b/src/logic/slbt_exec_stoolie.c index 7701735..779146a 100644 --- a/src/logic/slbt_exec_stoolie.c +++ b/src/logic/slbt_exec_stoolie.c @@ -102,7 +102,7 @@ static int slbt_exec_stoolie_perform_actions( return SLBT_BUFFER_ERROR(dctx); if (slbt_snprintf( - ltmain,sizeof(slibm4),"%s/%s", + ltmain,sizeof(ltmain),"%s/%s", SLBT_PACKAGE_DATADIR, "ltmain.sh") < 0) return SLBT_BUFFER_ERROR(dctx); |