gimp r24929 - in trunk: . app/core
- From: mitch svn gnome org
- To: svn-commits-list gnome org
- Subject: gimp r24929 - in trunk: . app/core
- Date: Wed, 20 Feb 2008 13:48:38 +0000 (GMT)
Author: mitch
Date: Wed Feb 20 13:48:37 2008
New Revision: 24929
URL: http://svn.gnome.org/viewvc/gimp?rev=24929&view=rev
Log:
2008-02-20 Michael Natterer <mitch gimp org>
* app/core/gimpcurve.c: add precondition checks.
* app/core/gimpdrawable-curves.c (gimp_drawable_curves_spline):
divide values by 255 before setting them on the curve. Fixes crash
when using curves from the PDB.
Modified:
trunk/ChangeLog
trunk/app/core/gimpcurve.c
trunk/app/core/gimpdrawable-curves.c
Modified: trunk/app/core/gimpcurve.c
==============================================================================
--- trunk/app/core/gimpcurve.c (original)
+++ trunk/app/core/gimpcurve.c Wed Feb 20 13:48:37 2008
@@ -438,6 +438,9 @@
gdouble y)
{
g_return_if_fail (GIMP_IS_CURVE (curve));
+ g_return_if_fail (point >= 0 && point < GIMP_CURVE_NUM_POINTS);
+ g_return_if_fail (x == -1.0 || (x >= 0 && x <= 1.0));
+ g_return_if_fail (y == -1.0 || (y >= 0 && y <= 1.0));
if (curve->curve_type == GIMP_CURVE_FREE)
return;
@@ -460,6 +463,8 @@
gdouble y)
{
g_return_if_fail (GIMP_IS_CURVE (curve));
+ g_return_if_fail (point >= 0 && point < GIMP_CURVE_NUM_POINTS);
+ g_return_if_fail (y >= 0 && y <= 1.0);
if (curve->curve_type == GIMP_CURVE_FREE)
return;
@@ -482,6 +487,7 @@
gdouble *y)
{
g_return_if_fail (GIMP_IS_CURVE (curve));
+ g_return_if_fail (point >= 0 && point < GIMP_CURVE_NUM_POINTS);
if (curve->curve_type == GIMP_CURVE_FREE)
return;
@@ -496,6 +502,8 @@
gdouble y)
{
g_return_if_fail (GIMP_IS_CURVE (curve));
+ g_return_if_fail (x >= 0 && x <= 1.0);
+ g_return_if_fail (y >= 0 && y <= 1.0);
if (curve->curve_type == GIMP_CURVE_SMOOTH)
return;
Modified: trunk/app/core/gimpdrawable-curves.c
==============================================================================
--- trunk/app/core/gimpdrawable-curves.c (original)
+++ trunk/app/core/gimpdrawable-curves.c Wed Feb 20 13:48:37 2008
@@ -85,8 +85,8 @@
for (i = 0; i < n_points / 2; i++)
gimp_curve_set_point (curve, i,
- points[i * 2],
- points[i * 2 + 1]);
+ (gdouble) points[i * 2] / 255.0,
+ (gdouble) points[i * 2 + 1] / 255.0);
gimp_data_thaw (GIMP_DATA (curve));
@@ -129,7 +129,7 @@
for (i = 0; i < 256; i++)
gimp_curve_set_curve (curve,
- (gdouble) i / 255.0,
+ (gdouble) i / 255.0,
(gdouble) points[i] / 255.0);
gimp_data_thaw (GIMP_DATA (curve));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]