aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar axel <axel@liljencrantz.se>2006-02-17 22:52:05 +1000
committerGravatar axel <axel@liljencrantz.se>2006-02-17 22:52:05 +1000
commite1d0b9370ed83b617ad263299113582a113f25ca (patch)
treee421327bf7449dc71c7344b6500ba4194b5c45fc
parent5dfa28059e5ea0e6f0db4dc48b05c8ebad7a53c1 (diff)
Minor edits in parse_util.c
darcs-hash:20060217125205-ac50b-f3cd1572eec966581730ee1983d06b64caac566f.gz
-rw-r--r--parse_util.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/parse_util.c b/parse_util.c
index 754e49f5..13544e48 100644
--- a/parse_util.c
+++ b/parse_util.c
@@ -495,13 +495,14 @@ int parse_util_load( const wchar_t *cmd,
if( !all_loaded )
{
- all_loaded = malloc( sizeof( hash_table_t ) );
+ all_loaded = malloc( sizeof( hash_table_t ) );
+ halloc_register_function_void( global_context, &parse_util_destroy );
if( !all_loaded )
{
die_mem();
}
hash_init( all_loaded, &hash_wcs_func, &hash_wcs_cmp );
- }
+ }
loaded = (hash_table_t *)hash_get( all_loaded, path_var );
@@ -514,7 +515,6 @@ int parse_util_load( const wchar_t *cmd,
}
hash_init( loaded, &hash_wcs_func, &hash_wcs_cmp );
hash_put( all_loaded, wcsdup(path_var), loaded );
- halloc_register_function_void( global_context, &parse_util_destroy );
}
/*
@@ -526,9 +526,13 @@ int parse_util_load( const wchar_t *cmd,
Did we just check this?
*/
if( tm )
+ {
if(time(0)-tm[1]<=1)
+ {
return 0;
-
+ }
+ }
+
/*
Return if already loaded and we are skipping reloading
*/
@@ -558,7 +562,7 @@ int parse_util_load( const wchar_t *cmd,
if( (wstat( (wchar_t *)path->buff, &buf )== 0) &&
(waccess( (wchar_t *)path->buff, R_OK ) == 0) )
{
- if( !tm || (*tm != buf.st_mtime ) )
+ if( !tm || (tm[0] != buf.st_mtime ) )
{
wchar_t *esc = escape( (wchar_t *)path->buff, 1 );
wchar_t *src_cmd = wcsdupcat( L". ", esc );