summaryrefslogtreecommitdiff
path: root/indra/mac_updater
diff options
context:
space:
mode:
Diffstat (limited to 'indra/mac_updater')
-rw-r--r--indra/mac_updater/mac_updater.cpp9
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