<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 14 Jan 2017, at 14:44, Peter Uhnák <<a href="mailto:i.uhnak@gmail.com" class="">i.uhnak@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Hi,<div class=""><br class=""></div><div class="">I think a regression occured in Pharo VM related to this, for example when I open the dialog</div><div class=""><br class=""></div><div class="">MorphicUIManager new fileSave: ''</div><div class=""><br class=""></div><div class="">In old win32 vm (Oct 12 2016) I am placed in the image directory and I see the whole hierarchy</div><div class="">​<br class=""></div><div class=""><span id="cid:ii_ixx9vq8g2_1599d2df4c6114e7"><oldvm.png></span></div><div class=""><br class=""></div><div class="">but with new VM (Jan 14 2017) I see just an empty tree with only hard drives available</div><div class=""><br class=""></div><div class=""><span id="cid:ii_ixx9wih53_1599d2e8420df567"><newvm.png></span><br class="">​<br class="">My own FileDialog implementation doesn't suffer from this, so maybe the Morphic one is just accessing the data in a weird way?</div><div class=""><br class=""></div><div class="">Peter</div></div></div></blockquote><div><br class=""></div><div>I think is a regression in FilePlugin… no problem with morphic… but now I’m not sure anymore. You made me doubt :)</div><div><br class=""></div><div>Esteban</div><div><br class=""></div><div>ps: FilePlugin is having problems anyway… I was expecting to work on it next week.</div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class=""><br class=""></div></div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Sat, Jan 14, 2017 at 11:21 AM, Nicolai Hess <span dir="ltr" class=""><<a href="mailto:nicolaihess@gmail.com" target="_blank" class="">nicolaihess@gmail.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class=""><br class=""><div class="gmail_extra"><br class=""><div class="gmail_quote"><div class=""><div class="h5">2016-01-15 0:07 GMT+01:00 Nicolai Hess <span dir="ltr" class=""><<a href="mailto:nicolaihess@gmail.com" target="_blank" class="">nicolaihess@gmail.com</a>></span>:<br class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr" class=""><div class=""><div class="">attached a patch on<br class=""><a href="http://bugs.squeak.org/view.php?id=7841" target="_blank" class="">http://bugs.squeak.org/view.ph<wbr class="">p?id=7841</a><br class=""></div>I think this could be applied on pharo win32 source as well.<br class=""></div>maybe with some small changes<br class=""></div><div class="m_3786921883250752100gmail-HOEnZb"><div class="m_3786921883250752100gmail-h5"><div class="gmail_extra"><br class=""><div class="gmail_quote">2015-11-16 10:00 GMT+01:00 Nicolai Hess <span dir="ltr" class=""><<a href="mailto:nicolaihess@gmail.com" target="_blank" class="">nicolaihess@gmail.com</a>></span>:<br class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr" class=""><div class="">I opened another bug report at mantis - > <a href="http://bugs.squeak.org/view.php?id=7841" target="_blank" class="">http://bugs.squeak.org/view.ph<wbr class="">p?id=7841</a><br class=""><br class=""></div>I can create a patch with the proposed solution.<div class=""><div class="m_3786921883250752100gmail-m_3929983475238094346h5"><br class=""><br class=""><div class=""><div class=""><div class="gmail_extra"><br class=""><div class="gmail_quote">2015-11-06 8:42 GMT+01:00 Nicolai Hess <span dir="ltr" class=""><<a href="mailto:nicolaihess@gmail.com" target="_blank" class="">nicolaihess@gmail.com</a>></span>:<br class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr" class=""><div class=""><div class=""><div class=""><div class=""><div class=""><div class=""><div class=""><div class=""><div class=""><div class=""><div class="">we have the following bug report<br class=""><a href="https://pharo.fogbugz.com/f/cases/16928/no-disk-in-the-drive-reply-to-World-Save-As-and-other-places" target="_blank" class="">16928</a> "no disk in the drive" reply to World | Save As (and other places)<br class=""><br class="">"On a clean Pharo4.0 #40618 image, on Windows 7<br class="">
World Menu | Save As brings up a modal alert window, "There is no disk 
in the drive. Please insert a disk into drive <etc>"<br class="">
<br class="">
On my system, it does this 4 times.  <br class="">
<br class="">
I'm assuming that each instance refers to one of the card-reader drives which are attached, but without a card inserted.<br class="">
<br class="">
This is a pain to deal with every single time a File Browser or World | Save As dialog is opened.<br class="">
<br class="">
Could the alerts either be <br class="">
 - only raised when that specific drive is requested by a user action<br class="">
or, less preferably<br class="">
 - given by a non-modal window, and fading away after a period"<br class=""><br class=""></div><div class="">I was able to reproduce this error on squeaks and pharos window vm.<br class=""></div><div class="">(insert a usb card reader, with card, wait some time , remove only the card,<br class=""></div><div class="">every access on this drive, for example open a FileList and scroll to the drive letter).<br class=""></div><div class=""><br class=""><br class=""></div>The solution I found is to call SetErrorMode(<b class="">SEM_FAILCRITICALE<wbr class="">RRORS)<br class=""></b><br class="">I would like to propose the following change to sqwin32directory.c<br class=""></div>wrap the call to FindFirstFileW/FindNextFileW with<br class=""><br class=""></div>UINT prevMode = SetErrorMode(SEM_FAILCRITICALE<wbr class="">RRORS);<br class=""></div>call   FindFirstFileW/FindNextFileW<br class=""></div>SetErrorMode(prevMode);<br class=""></div><br class="">...<br class=""><br class=""></div>and call this functions in at least dir_lookup()<br class=""></div>(the other file/directory methods are save).<br class=""><br class=""></div>Alternative solution, we could call the SetErrorMode function once at program start<br class=""></div>but I don't know if there are other "useful" errors message that we don't want to disable.<br class=""><br class=""></div><div class="">I tested both solution, both seems to work fine.<br class=""><br class=""></div>What do you think?<br class=""><div class=""><div class=""><div class=""><div class=""><div class=""><br class=""><br class=""><br class=""><br class=""></div></div></div></div></div></div>
</blockquote></div><br class=""></div></div></div></div></div></div>
</blockquote></div><br class=""></div></div></div></blockquote><div class=""><br class=""></div></div></div><div class="">Any chance to include this  ? Or is it already done, if so I can close the issue at pharo.fogbugz   and <a href="http://bugs.squeak.org/" target="_blank" class="">bugs.squeak.org</a><br class=""></div></div><br class=""></div></div>
</blockquote></div><br class=""></div>
</div></blockquote></div><br class=""></body></html>