summaryrefslogtreecommitdiffstats
path: root/third_party/qcms
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/qcms')
-rw-r--r--third_party/qcms/README.chromium2
-rw-r--r--third_party/qcms/src/transform.c10
2 files changed, 7 insertions, 5 deletions
diff --git a/third_party/qcms/README.chromium b/third_party/qcms/README.chromium
index 2bb6427..b870696 100644
--- a/third_party/qcms/README.chromium
+++ b/third_party/qcms/README.chromium
@@ -87,6 +87,8 @@ The following changes have been made since qcms was imported:
- https://bugzilla.mozilla.org/show_bug.cgi?id=764181
- Drop SSE1 code as Chromium mandates SSE2 as a minimum requirement
- https://code.google.com/p/chromium/issues/detail?id=506856
+ - Apply Fix potential leaks in qcms_transform_create
+ - https://bugzilla.mozilla.org/show_bug.cgi?id=1168480
For the Chromium changes, since the import, in a patch format run:
git diff b8456f38 src
diff --git a/third_party/qcms/src/transform.c b/third_party/qcms/src/transform.c
index e87be7f..510c9f8 100644
--- a/third_party/qcms/src/transform.c
+++ b/third_party/qcms/src/transform.c
@@ -1249,7 +1249,7 @@ qcms_transform* qcms_transform_create(
if (out_type != QCMS_DATA_RGB_8 &&
out_type != QCMS_DATA_RGBA_8) {
assert(0 && "output type");
- transform_free(transform);
+ qcms_transform_release(transform);
return NULL;
}
@@ -1270,7 +1270,7 @@ qcms_transform* qcms_transform_create(
qcms_transform *result = qcms_transform_precacheLUT_float(transform, in, out, 33, in_type);
if (!result) {
assert(0 && "precacheLUT failed");
- transform_free(transform);
+ qcms_transform_release(transform);
return NULL;
}
return result;
@@ -1300,7 +1300,7 @@ qcms_transform* qcms_transform_create(
if (in_type != QCMS_DATA_RGB_8 &&
in_type != QCMS_DATA_RGBA_8){
assert(0 && "input type");
- transform_free(transform);
+ qcms_transform_release(transform);
return NULL;
}
if (precache) {
@@ -1364,7 +1364,7 @@ qcms_transform* qcms_transform_create(
if (in_type != QCMS_DATA_GRAY_8 &&
in_type != QCMS_DATA_GRAYA_8){
assert(0 && "input type");
- transform_free(transform);
+ qcms_transform_release(transform);
return NULL;
}
@@ -1389,7 +1389,7 @@ qcms_transform* qcms_transform_create(
}
} else {
assert(0 && "unexpected colorspace");
- transform_free(transform);
+ qcms_transform_release(transform);
return NULL;
}
return transform;