diff options
Diffstat (limited to 'indra/mac_updater')
-rw-r--r-- | indra/mac_updater/mac_updater.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/indra/mac_updater/mac_updater.cpp b/indra/mac_updater/mac_updater.cpp index 91bf24ec11..ecef6e6b77 100644 --- a/indra/mac_updater/mac_updater.cpp +++ b/indra/mac_updater/mac_updater.cpp @@ -971,10 +971,12 @@ void *updatethreadproc(void*) if(len < sizeof(temp)-1) { // End of file or error. - if(pclose(mounter) != 0) + int result = pclose(mounter); + if(result != 0) { - llinfos << "Failed to mount disk image, exiting."<< llendl; - throw 0; + // NOTE: We used to abort here, but pclose() started returning + // -1, possibly when the size of the DMG passed a certain point + llinfos << "Unexpected result closing pipe: " << result << llendl; } mounter = NULL; } @@ -1000,6 +1002,7 @@ void *updatethreadproc(void*) else { llinfos << "Disk image device node not found!" << llendl; + throw 0; } // Get an FSRef to the new application on the disk image |