pdf-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[pdf-devel] Adapted RL to new filter API


From: gerel
Subject: [pdf-devel] Adapted RL to new filter API
Date: Sat, 04 Oct 2008 11:49:37 -0700 (PDT)


Hey all,

Here is a patch for the RL in the filter API.

##
# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: address@hidden
# target_branch: file:///home/gerel/PROJECTS/libgnupdf/trunk/
# testament_sha1: 8b9595862d41f5276fb8a1d82e1c8d43219f3e64
# timestamp: 2008-10-04 15:44:52 -0300
# base_revision_id: address@hidden
# 
# Begin patch
=== modified file 'ChangeLog'
--- ChangeLog   2008-10-04 18:10:03 +0000
+++ ChangeLog   2008-10-04 18:44:47 +0000
@@ -1,3 +1,11 @@
+2008-10-04  Gerardo E. Gidoni  <address@hidden>
+
+       * src/base/pdf-stm-f-rl.c: adapted to new filter API.
+
+       * torture/unit/base/stm/pdf-stm-read.c: same.
+
+       * torture/unit/base/stm/pdf-stm-write.c: same.
+
 2008-10-04  Jose E. Marchesi  <address@hidden>
 
        * doc/pdf-filter.1: Generated.

=== modified file 'src/base/pdf-stm-f-rl.c'
--- src/base/pdf-stm-f-rl.c     2008-09-28 23:21:24 +0000
+++ src/base/pdf-stm-f-rl.c     2008-10-04 18:44:47 +0000
@@ -1,4 +1,4 @@
-/* -*- mode: C -*- Time-stamp: "2008-09-28 20:18:38 gerel"
+/* -*- mode: C -*- Time-stamp: "2008-10-04 15:41:30 gerel"
  *
  *       File:         pdf-stm-f-rl.c
  *       Date:         Sun Jul 15 22:01:18 2007
@@ -112,7 +112,7 @@
         {
           if (encode_rl_char (st, out) < 0)
             {
-              return PDF_OK;
+              return PDF_ENOUTPUT;
             }
           st->rl=-1;
           st->run_p = PDF_FALSE;
@@ -130,7 +130,7 @@
           if (encode_rl_char (st, out) < 0)
             {
               /* Should not be reached */
-              return PDF_ERROR;
+              return PDF_ENOUTPUT;
             }
           st->rl=-1;
           st->run_p = PDF_FALSE;
@@ -138,17 +138,14 @@
       if (pdf_stm_buffer_full_p (out))
         {
           /* Should not be reached */
-          return PDF_ERROR;
+          return PDF_ENOUTPUT;
         }
       /* Insert EOD marker */
       out->data[out->wp++] = 128;
-    }
-
-  if (pdf_stm_buffer_eob_p (in))
-    {
       return PDF_EEOF;
     }
-  return PDF_OK;
+
+  return PDF_ENINPUT;
 }
 
 
@@ -185,11 +182,11 @@
           copied = copy_next_bytes (st, in, out);
           if (copied < 0)
             {
-              return PDF_OK;
+              return PDF_ENOUTPUT;
             }
           else if (copied > 0)
             {
-              return PDF_EEOF;
+              return PDF_ENINPUT;
             }
           st->run_p = PDF_FALSE;
         }
@@ -198,7 +195,7 @@
         {
           if (decode_rl_char (st, out) < 0)
             {
-              return PDF_OK;
+              return PDF_ENOUTPUT;
             }
           st->run_p = PDF_FALSE;
           in->rp++;
@@ -207,15 +204,11 @@
       else
         {
           st->run_p = PDF_FALSE;
+          return PDF_EEOF;
         }
     }
 
-  if (pdf_stm_buffer_eob_p (in))
-    {
-      return PDF_EEOF;
-    }
-
-  return PDF_OK;
+  return PDF_ENINPUT;
 }
 
 pdf_status_t
@@ -283,6 +276,10 @@
 {
   if (!st->dec_p)
     {
+      if (pdf_stm_buffer_full_p (out))
+        {
+          return -1;
+        }
       st->dec_count = st->rlchar + 1;
       st->dec_p = PDF_TRUE;
       out->data[out->wp++] = st->curchar;

=== modified file 'torture/unit/base/stm/pdf-stm-read.c'
--- torture/unit/base/stm/pdf-stm-read.c        2008-09-28 23:21:24 +0000
+++ torture/unit/base/stm/pdf-stm-read.c        2008-10-04 18:44:47 +0000
@@ -1,4 +1,4 @@
-/* -*- mode: C -*- Time-stamp: "2008-09-28 20:17:40 gerel"
+/* -*- mode: C -*- Time-stamp: "2008-10-04 15:42:24 gerel"
  *
  *       File:         pdf-stm-read.c
  *       Date:         Sat Sep 20 15:20:17 2008
@@ -306,7 +306,7 @@
   pdf_size_t buf_size, total=46,read;
   pdf_char_t *dataux, *encoded =
     "\x00" "1" "\xff" "2" "\xfe" "3" "\xfd" "4" "\xfc" "5" "\xfb" "6" \
-    "\xfa" "7" "\xf9" "8" "\xf8" "9" "\x80" "\x00" "\x00" "\x80";
+    "\xfa" "7" "\xf9" "8" "\xf8" "9" "\x00" "\x00" "\x80";
 
   /* Writing stream */
   /* Create a memory buffer */
@@ -315,7 +315,7 @@
   fail_if(buf == NULL);
   /* Create the stream */
   ret = pdf_stm_mem_new (encoded,
-                         22,
+                         21,
                          1, /* Minimum, to restore filter's state */
                          PDF_STM_READ,
                          &stm);

=== modified file 'torture/unit/base/stm/pdf-stm-write.c'
--- torture/unit/base/stm/pdf-stm-write.c       2008-10-02 20:49:15 +0000
+++ torture/unit/base/stm/pdf-stm-write.c       2008-10-04 18:44:47 +0000
@@ -1,4 +1,4 @@
-/* -*- mode: C -*- Time-stamp: "08/10/02 22:26:20 jemarch"
+/* -*- mode: C -*- Time-stamp: "2008-10-04 15:38:46 gerel"
  *
  *       File:         pdf-stm-write.c
  *       Date:         Sun Sep 21 16:37:27 2008
@@ -261,7 +261,7 @@
   /* Create the stream */
   ret = pdf_stm_mem_new (buf,
                          buf_size,
-                         5, /* Minimum with EOD, to restore filter's state */
+                         1, /* Minimum with EOD, to restore filter's state */
                          PDF_STM_WRITE,
                          &stm);
   fail_if(ret != PDF_OK);

# Begin bundle
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


###

-gerel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]