summaryrefslogtreecommitdiff
path: root/indra/llimage
diff options
context:
space:
mode:
authorEuclid Linden <euclid@lindenlab.com>2021-11-16 18:16:24 +0000
committerEuclid Linden <euclid@lindenlab.com>2021-11-16 18:16:24 +0000
commitb1964a47005d7bbd99258af7f4eaf4b12baeb423 (patch)
tree8e27a7cb161f6e24439a772c5bcfdd4a3ee6f83a /indra/llimage
parente914f3e4a11ff86b3e05089c9b3a6677ec623c9c (diff)
parent17f71efce08ed4e677b497f4734d6f9f1fef56a3 (diff)
Merged in DV528-merge-6.5.1 (pull request #774)
DRTVWR-528 merge up to 6.5.1
Diffstat (limited to 'indra/llimage')
-rw-r--r--indra/llimage/llimage.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/indra/llimage/llimage.cpp b/indra/llimage/llimage.cpp
index aed8943439..983c7c2406 100644
--- a/indra/llimage/llimage.cpp
+++ b/indra/llimage/llimage.cpp
@@ -1456,7 +1456,7 @@ bool LLImageRaw::scale( S32 new_width, S32 new_height, bool scale_image_data )
setDataAndSize(new_data, new_width, new_height, components);
}
}
- else
+ else try
{
// copy out existing image data
S32 temp_data_size = old_width * old_height * components;
@@ -1490,6 +1490,11 @@ bool LLImageRaw::scale( S32 new_width, S32 new_height, bool scale_image_data )
}
}
}
+ catch (std::bad_alloc&) // for temp_buffer
+ {
+ LL_WARNS() << "Failed to allocate temporary image buffer" << LL_ENDL;
+ return false;
+ }
return true ;
}