X-Spam-Check-By: sourceware.org From: "Dave Korn" To: Subject: RE: no message or dialog when a DLL is missing Date: Wed, 30 Aug 2006 16:29:57 +0100 Message-ID: <046301c6cc49$2623b0f0$a501a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <44F5AC54.4000001@innobec.com> Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 30 August 2006 16:19, Pierre Baillargeon wrote: > I've identified the reason why DLL don't show up: in the startup code > (winsup/cygwin/dcrt0.cc), in dll_crt0_0(), Win32's SetErrorMode() is > called to suppress all OS error dialogs. It's there since 1998 according > to the changelog, so it must not bother many people... It's a real, huge, massive problem, when an entirely scripted and automated process such as a cron job suddenly pops up a requester in the middle of the night that won't go away until someone comes in the next day, logs in, and clicks it away ... > I guess it would > be ugly to add error messages for missing DLLs all the way up from the > low-level spawn/exec/etc. > > And in it's usual nice design practice, SetErrorMode() is a global > setting affecting all threads in the process, so changing it temporarily > in the spawn()/exec() function could be bad. Probably, the solution would be for cygwin to spot the error and report it through errno with a status of -2 from the exec call, so that the shell would issue a 'file not found' error. Or there might be some grounds to consider adding a '(no)suppresspopups' option to the CYGWIN environment variable. cheers, DaveK -- Can't think of a witty .sigline today.... -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/