[babl] babl-icc: length of string in descr should include \0
- From: Øyvind Kolås <ok src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [babl] babl-icc: length of string in descr should include \0
- Date: Wed, 23 Aug 2017 23:17:27 +0000 (UTC)
commit af7c3a3f8a1874b4da1b981dcdb202bfe84e8fc5
Author: Øyvind Kolås <pippin gimp org>
Date: Thu Aug 24 01:16:57 2017 +0200
babl-icc: length of string in descr should include \0
babl/babl-icc.c | 25 +++++++++++++------------
1 files changed, 13 insertions(+), 12 deletions(-)
---
diff --git a/babl/babl-icc.c b/babl/babl-icc.c
index 649ed7d..8f00851 100644
--- a/babl/babl-icc.c
+++ b/babl/babl-icc.c
@@ -317,9 +317,11 @@ static const Babl *babl_trc_lut_find (float *lut, int lut_size)
{
for (i = 0; match && i < lut_size; i++)
{
+#if 0
fprintf (stderr, "%i %f %f\n", i,
lut[i],
pow ((i / (lut_size-1.0)), 2.2));
+#endif
if (fabs (lut[i] - pow ((i / (lut_size-1.0)), 2.2)) > 0.0001)
match = 0;
}
@@ -342,9 +344,11 @@ static const Babl *babl_trc_lut_find (float *lut, int lut_size)
{
for (i = 0; match && i < lut_size; i++)
{
+#if 0
fprintf (stderr, "%i %f %f\n", i,
lut[i],
pow ((i / (lut_size-1.0)), 1.8));
+#endif
if (fabs (lut[i] - pow ((i / (lut_size-1.0)), 1.8)) > 0.0001)
match = 0;
}
@@ -527,18 +531,17 @@ const char *babl_space_rgb_to_icc (const Babl *babl, int *ret_length)
icc_write (sign, 16, "RGB ");
icc_write (sign, 20, "XYZ ");
- icc_write (u16, 24, 2017); // babl profiles
- icc_write (u16, 26, 8); // should
- icc_write (u16, 28, 21); // use a fixed
- icc_write (u16, 30, 2); // date
- icc_write (u16, 32, 25); // that gets updated
- icc_write (u16, 34, 23); // when the generator
- icc_write (u16, 34, 23); // when the generator
+ icc_write (u16, 24, 2222); // babl profiles
+ icc_write (u16, 26, 11); // should
+ icc_write (u16, 28, 11); // use a fixed
+ icc_write (u16, 30, 3); // date
+ icc_write (u16, 32, 44); // that gets updated
+ icc_write (u16, 34, 55); // when the generator
icc_write (sign, 36, "acsp"); // changes
{
- state->tags = 10; /* note: we could reserve a couple of spots and
+ state->tags = 9; /* note: we could reserve a couple of spots and
still use a very simple allocator and
still be valid - albeit with tiny waste of
space.
@@ -593,14 +596,12 @@ const char *babl_space_rgb_to_icc (const Babl *babl, int *ret_length)
char str[128];
int i;
sprintf (str, "babl");
- icc_allocate_tag(state, "desc", 100 + strlen (str) + 1);
+ icc_allocate_tag(state, "desc", 90 + strlen (str) + 1);
icc_write (sign, state->o,"desc");
icc_write (u32, state->o + 4, 0);
- icc_write (u32, state->o + 8, strlen(str));
+ icc_write (u32, state->o + 8, strlen(str) + 1);
for (i = 0; str[i]; i++)
icc_write (u8, state->o + 12 + i, str[i]);
-
- icc_duplicate_tag (state, "dmnd");
}
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]