aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2005-07-19 10:46:09 +0000
committerChristian Grothoff <christian@grothoff.org>2005-07-19 10:46:09 +0000
commit9cba24c2c6c31d5e5518220fb78b1a12e9f46fea (patch)
tree6abcc815b1c6bdb2492849f257aac259ce49aab5
parent367e9010f8001410edc08b043dc9856d33da971b (diff)
downloadgnunet-gtk-9cba24c2c6c31d5e5518220fb78b1a12e9f46fea.tar.gz
gnunet-gtk-9cba24c2c6c31d5e5518220fb78b1a12e9f46fea.zip
cleaner: use LE 0.5.2 functions
-rw-r--r--src/plugins/fs/meta.c37
1 files changed, 3 insertions, 34 deletions
diff --git a/src/plugins/fs/meta.c b/src/plugins/fs/meta.c
index 8009368f..fdb07351 100644
--- a/src/plugins/fs/meta.c
+++ b/src/plugins/fs/meta.c
@@ -319,40 +319,9 @@ struct ECRS_MetaData * getMetaDataFromList(GladeXML * xml,
319 NULL, 319 NULL,
320 NULL)) { 320 NULL)) {
321 char * binary; 321 char * binary;
322 size_t pos; 322
323 size_t end; 323 binary = EXTRACTOR_binaryEncode(thumb,
324 size_t wpos; 324 length);
325 size_t i;
326 unsigned int markers[8]; /* 256 bits */
327 unsigned char marker;
328
329 /* encode! */
330 binary = MALLOC(2 + length + (length+256) / 254);
331 pos = 0;
332 wpos = 0;
333 while (pos < length) {
334 /* find unused value between 1 and 255 in
335 the next 254 bytes */
336 end = pos + 254;
337 if (end < pos)
338 break; /* integer overflow! */
339 if (end > length)
340 end = length;
341 memset(markers, 0, sizeof(markers));
342 for (i=pos;i<end;i++)
343 markers[thumb[i]&7] |= 1 << (thumb[i] >> 3);
344 marker = 1;
345 while (markers[marker&7] & (1 << (marker >> 3))) {
346 marker++;
347 GNUNET_ASSERT(marker != 0);
348 }
349 /* recode */
350 binary[wpos++] = marker;
351 for (i=pos;i<end;i++)
352 binary[wpos++] = thumb[i] == 0 ? marker : thumb[i];
353 pos = end;
354 }
355 binary[wpos++] = 0; /* 0-termination! */
356 free(thumb); 325 free(thumb);
357 ECRS_addToMetaData(meta, 326 ECRS_addToMetaData(meta,
358 EXTRACTOR_THUMBNAIL_DATA, 327 EXTRACTOR_THUMBNAIL_DATA,