# HG changeset patch # User jwe # Date 1095361460 0 # Node ID efa1ba94dab503302c30d16478d5dabba0d10a76 # Parent a0e7231a58eb481c9c976316ecdda7ca12883028 [project @ 2004-09-16 19:04:20 by jwe] diff -r a0e7231a58eb -r efa1ba94dab5 src/ChangeLog --- a/src/ChangeLog Thu Sep 16 16:46:32 2004 +0000 +++ b/src/ChangeLog Thu Sep 16 19:04:20 2004 +0000 @@ -1,3 +1,7 @@ +2004-09-16 John W. Eaton + + * variables.cc (symbol_out_of_date): Always look in LOADPATH. + 2004-09-15 John W. Eaton * OPERATORS/op-int-conv.cc: Define and install bool to int diff -r a0e7231a58eb -r efa1ba94dab5 src/variables.cc --- a/src/variables.cc Thu Sep 16 16:46:32 2004 +0000 +++ b/src/variables.cc Thu Sep 16 19:04:20 2004 +0000 @@ -772,19 +772,28 @@ { time_t tp = tmp->time_parsed (); - std::string fname; - - if (tmp->is_dld_function ()) - fname = ff; + std::string nm = tmp->name (); + + string_vector names (2); + + names[0] = nm + ".oct"; + names[1] = nm + ".m"; + + std::string file = octave_env::make_absolute + (Vload_path_dir_path.find_first_of (names), + octave_env::getcwd ()); + + if (file != ff) + retval = true; else - fname = fcn_file_in_path (ff); - - tmp->mark_fcn_file_up_to_date (octave_time ()); - - file_stat fs (fname); - - if (fs && fs.is_newer (tp)) - retval = true; + { + tmp->mark_fcn_file_up_to_date (octave_time ()); + + file_stat fs (ff); + + if (fs && fs.is_newer (tp)) + retval = true; + } } } }