parsedir is only called from Client.launchmanycore.LaunchMany.scan() and Tracker.track.Tracker.parse_allowed(). In the former case, the affected dict, file_cache is only used in repeated calls to parsedir. In the latter, the affected dict, allowed_dir_files also exists in the Tracker.statedict, which is what caused #25 in the first place.
The only potentially negative impact of this change I can see is if a file of the same length is placed in the same directory before the clock rolls over to a new second. The alternative fix would be to coerce the float to an int at save time, which would result in having to re-parse the directory anyway, as the mtimes would no longer match.
parsedir
is only called fromClient.launchmanycore.LaunchMany.scan()
andTracker.track.Tracker.parse_allowed()
. In the former case, the affecteddict
,file_cache
is only used in repeated calls toparsedir
. In the latter, the affecteddict
,allowed_dir_files
also exists in theTracker.state
dict
, which is what caused #25 in the first place.The only potentially negative impact of this change I can see is if a file of the same length is placed in the same directory before the clock rolls over to a new second. The alternative fix would be to coerce the
float
to anint
at save time, which would result in having to re-parse the directory anyway, as themtime
s would no longer match.Closes #25.