[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[pdf-devel] Stream backends and strncpy()
From: |
gerel |
Subject: |
[pdf-devel] Stream backends and strncpy() |
Date: |
Wed, 24 Sep 2008 14:57:06 -0700 (PDT) |
Hey folks,
I've been all day testing the RunLength filter, and sadly the problem was that
I found this, pdf-stm-be.c, line 278:
##
/* Copy the data */
strncpy ((char *) be->data.mem.buffer + be->data.mem.pos,
(char *) buffer,
written_bytes);
###
We should use memcpy() because strncpy() mess with '\0' characters. :-/
Here is a patch for that modification,
##
# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: address@hidden
# target_branch: file:///home/gerel/PROJECTS/libgnupdf/trunk/
# testament_sha1: ffa292860096dfb0281254f7d1d18727623986a8
# timestamp: 2008-09-24 18:46:56 -0300
# base_revision_id: address@hidden
#
# Begin patch
=== modified file 'ChangeLog'
--- ChangeLog 2008-09-22 23:40:53 +0000
+++ ChangeLog 2008-09-24 21:46:44 +0000
@@ -1,3 +1,7 @@
+2008-09-24 Gerardo E. Gidoni <address@hidden>
+
+ * src/base/pdf-stm-be.c: using memcpy() instead of strncpy().
+
2008-09-23 Jose E. Marchesi <address@hidden>
* ../ahex-filters/src/base/pdf-stm-f-ahex.c
=== modified file 'src/base/pdf-stm-be.c'
--- src/base/pdf-stm-be.c 2008-09-22 21:39:19 +0000
+++ src/base/pdf-stm-be.c 2008-09-24 21:46:44 +0000
@@ -1,4 +1,4 @@
-/* -*- mode: C -*- Time-stamp: "08/09/22 23:21:03 jemarch"
+/* -*- mode: C -*- Time-stamp: "2008-09-24 18:45:45 gerel"
*
* File: pdf-stm-be.c
* Date: Wed Jun 18 21:15:16 2008
@@ -236,9 +236,9 @@
if (readed_bytes != 0)
{
/* Copy the data */
- strncpy ((char *) buffer,
- (char *) be->data.mem.buffer + be->data.mem.pos,
- readed_bytes);
+ memcpy ((char *) buffer,
+ (char *) be->data.mem.buffer + be->data.mem.pos,
+ readed_bytes);
be->data.mem.pos += readed_bytes;
}
@@ -275,9 +275,9 @@
if (written_bytes != 0)
{
/* Copy the data */
- strncpy ((char *) be->data.mem.buffer + be->data.mem.pos,
- (char *) buffer,
- written_bytes);
+ memcpy ((char *) be->data.mem.buffer + be->data.mem.pos,
+ (char *) buffer,
+ written_bytes);
be->data.mem.pos += written_bytes;
}
# Begin bundle
IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWW2MZWQAAk/fgFAwUX///1qE
BAC////wUAS6r2gDrLRqHbRDJEQyYmgPQjTRpoAANAAEpKZPUHqeoyNGQ9QAAANANAJIiaJkDRNp
hTTQyT1PSMQ9Jp6T1DQ5gAJgACYAAAAABVEgEaaNU/RBNo00RianpGg0GhormJjZmjCiJgN69X2Z
tfXrtLAyk8sSdMsbXmqmEQV4R2FVW+psV8CEgLB4P4eX0Q9wc00Z3AsTq8B5aDgR+t6yLsxIeZnh
M1efB9m/A3jGX8Htosycp4/kpeTTWuhTEigbMk2HHRYjEt+ziboE9KlbTKhC5pFkFxsxHXlRF+PW
Vvsn5+1pyS7rU3Kl7linuo59SkI7Dh2nvAkHMmXOaPebuVGGIkHMOiSgX6Vn7OGzEchous88dMpm
Nk0+HAh5PFRqTZ60inkw3l6pUrYWqlJCkd6uEVromjU9q+sfYuZCuZov7qa3LGv0pjln+5jZxiRq
NO+zx1qtBVfFzJm1TVNLdzjnQNzZsiUpwwwkTSWz3SUFSy9KsUUU3sF6+HHob18UxNduKJjBbs9q
6uFujRZi+7rvuTpmMveYR0XLI1qCWAzZbVLxn8zW0Zx0KPPQYRaxnRu4Mq2kXJNqrONitkZ7WvYv
Y4/FtK7Ztye5VWNWxTpcr1zcdbqK5Grt0Jlc3qaFjE1FyXU6otuXyrSmYiNpVm1MFo8Q2hbFVxZA
MGK4qKxQSOq+gksAsgIimQ1Bo1aWpY2Dvz3WWbLalNW8mJKsoxhZ5sU8lcxxkcmMpmyUDQLGZ+7w
IKLcbvquG6EnJ22hGO3vQyB8zMyY8dEmgxFslOeLphNVTExsJxaTAuPjgWVJ2pwh57IxVYxFvrCr
CI71Ubj47TbzdylTi5rFyR0RIDmilT9Q+TDkR5LErDOPtL4QlkWRm66xB2/P6F1fu0i+eFlTT0er
wWvDiuLjRTFFvkfJ1u52bXOI6MKFfk+PYcJKlW1wjwfejFm3O3TobI9G+6fOatqYVb/PY3erZy/H
dfCNTI+cJMa9IlFDaaq4dMQKy4Il5UqUEEPqvqNQGkwLzWMVpY1vGI+jk8XbMeLJ2aWM6aKKIjkr
mEu3D6+Solk4HRJdN3kMLsF7uKuwDiXAZ9aVvqBNxsJegvCcwVRUL+xLvdGXQQ9LYwig8UGbbA8t
4Hdr2srS4sR8zEG8yQEOLdr84nbm7fO4mQdSc4wCqpfcP4WnDCRSX3SxFq8yeZGNgkpUeRJEzKKe
uE4MwqESo8hPkuwPP/GhJK6QOLlYiIhhJePFZQWqgEAgDGdJzqTZHAvMMXddgnOGTqMEzDCHyp31
o+HhWFBKmNZUyh10pKej4gvgsI6AkTMMvYHHJ3kNOTJ0GEaPfBRabb2U+1G9hCydXI7+VS/zKG1S
ceRP0ay/yG/mrXwa4mYqk0UUiI59p5Dpb78PT6vMXao64OOHPt0uWDQyHwYQ5NOl07sjIaS/HYqI
B/xdyRThQkG2MZWQ
###
-gerel
- [pdf-devel] Stream backends and strncpy(),
gerel <=