Thread

  1. win32env.c bug with no msvcrt

    Magnus Hagander <magnus@hagander.net> — 2009-12-23T12:36:14Z

    There is code in src/port/win32env.c to update the environment within
    the msvcrt.dll runtime even when running in msvcr70.dll (visual C++
    2005). It updates that one, the local one *and* the system
    environment.
    
    However, in case there is no msvcrt.dll linked into the process, it
    will abort at that stage and *not* update the system or local
    environment. This happens during my tests on Visual Studio 2008, and
    it causes the regression tests to fail (since they set environment
    variables for subprocesses - thus needing the system env update)
    
    The attached patch changes this to just ignore failure to find
    msvcr.dll. It usually doesn't happen, because we almost always link
    with third party libs that bring it in, but it can happen. Also, since
    we *never* check the return code from putenv anyway, returning an
    error code makes no sense...
    
    Given that we've had zero reports of this on previous versions, I'm
    not planning to backpatch this.
    
    Comments?
    
    -- 
     Magnus Hagander
     Me: http://www.hagander.net/
     Work: http://www.redpill-linpro.com/