I've narrowed the bug somewhat.
The bug was introduced in the Nov 05 2007 version.
The bug is not reproducible in the Nov 03 2007 version.
Unfortunately, there are lots of differences between those versions.
I have narrowed down the reproduction steps. I would be glad if
someone could narrow it down even further:
integer hookI, hookBUD, hookAUD
proc SaveHookState()
hookI = SetHookState(OFF, _IDLE_)
hookBUD = SetHookState(OFF, _BEFORE_UPDATE_DISPLAY_)
hookAUD = SetHookState(OFF, _AFTER_UPDATE_DISPLAY_)
end
proc RestoreHookState()
SetHookState(hookI, _IDLE_)
SetHookState(hookBUD, _BEFORE_UPDATE_DISPLAY_)
SetHookState(hookAUD, _AFTER_UPDATE_DISPLAY_)
end
keydef FilenamePromptKeys
<Enter> EndProcess(TRUE)
<GreyEnter> EndProcess(TRUE)
end
proc FilenamePromptStartup()
Enable(FilenamePromptKeys)
end
proc FilenamePromptCleanup()
Disable(FilenamePromptKeys)
end
string temp_fn[_MAX_PATH_]
proc Main()
string st[_MAX_PATH_] = "*.zip"
string temp_dir[_MAX_PATH_] = GetEnvStr("TEMP")
temp_fn = QuotePath(MakeTempName(temp_dir))
ExecMacro("state -l -s -f" + temp_fn)
SaveHookState()
UpdateDisplay()
Hook(_PROMPT_STARTUP_, FilenamePromptStartup)
Hook(_PROMPT_CLEANUP_, FilenamePromptCleanup)
AskFilename('Compare "'
+ Upper(SplitPath(CurrFilename(), _NAME_ | _EXT_)) +
'" to: ',
st, _MUST_EXIST_)
UnHook(FilenamePromptStartup)
UnHook(FilenamePromptCleanup)
PurgeMacro(CurrMacroFilename())
RestoreHookState()
warn("calling state restore:"; temp_fn)
ExecMacro("state -l -r -f" + temp_fn)
warn("calling EraseDiskFile()")
EraseDiskFile(temp_fn)
warn("macro returning")
end Main
> To view this discussion visit
https://groups.google.com/d/msgid/semware/8e82fc334127ee4430e600421264730c23433d24.camel%40gmail.com.