2005-07-13 [colin] 1.9.12cvs41
authorColin Leroy <colin@colino.net>
Wed, 13 Jul 2005 03:11:33 +0000 (03:11 +0000)
committerColin Leroy <colin@colino.net>
Wed, 13 Jul 2005 03:11:33 +0000 (03:11 +0000)
* src/plugins/pgpmime/pgpmime.c
* src/plugins/pgpmime/sgpgme.c
Use gpgme_data_release_and_get_mem instead
of gpgme_data_read.

ChangeLog-gtk2.claws
PATCHSETS
configure.ac
src/plugins/pgpmime/pgpmime.c
src/plugins/pgpmime/sgpgme.c

index cb028c4dce0a8bb6c81e768a95d2ca63a5eb3bd7..1896213b2df95845c16cb053c47303050f009480 100644 (file)
@@ -1,3 +1,10 @@
+2005-07-13 [colin]     1.9.12cvs41
+
+       * src/plugins/pgpmime/pgpmime.c
+       * src/plugins/pgpmime/sgpgme.c
+               Use gpgme_data_release_and_get_mem instead
+               of gpgme_data_read.
+
 2005-07-13 [colin]     1.9.12cvs40
 
        * configure.ac
index 84b945653da4cddecee4861042a087cf3e1e8f53..60d15f0f2e8ee9ce68d100cc237efa6d619cd084 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.5.2.5 -r 1.5.2.6 src/statusbar.c;  ) > 1.9.12cvs38.patchset
 ( cvs diff -u -r 1.100.2.21 -r 1.100.2.22 AUTHORS;  cvs diff -u -r 1.43.2.19 -r 1.43.2.20 src/toolbar.c;  cvs diff -u -r 1.19.2.3 -r 1.19.2.4 src/toolbar.h;  ) > 1.9.12cvs39.patchset
 ( cvs diff -u -r 1.654.2.674 -r 1.654.2.675 configure.ac;  cvs diff -u -r 1.1.2.8 -r 1.1.2.9 src/plugins/pgpmime/passphrase.c;  cvs diff -u -r 1.1.2.1 -r 1.1.2.2 src/plugins/pgpmime/passphrase.h;  cvs diff -u -r 1.1.2.17 -r 1.1.2.18 src/plugins/pgpmime/pgpmime.c;  cvs diff -u -r 1.1.2.9 -r 1.1.2.10 src/plugins/pgpmime/plugin.c;  cvs diff -u -r 1.1.2.6 -r 1.1.2.7 src/plugins/pgpmime/select-keys.c;  cvs diff -u -r 1.1.2.1 -r 1.1.2.2 src/plugins/pgpmime/select-keys.h;  cvs diff -u -r 1.1.2.8 -r 1.1.2.9 src/plugins/pgpmime/sgpgme.c;  cvs diff -u -r 1.1.2.4 -r 1.1.2.5 src/plugins/pgpmime/sgpgme.h;  ) > 1.9.12cvs40.patchset
+( cvs diff -u -r 1.1.2.18 -r 1.1.2.19 src/plugins/pgpmime/pgpmime.c;  cvs diff -u -r 1.1.2.9 -r 1.1.2.10 src/plugins/pgpmime/sgpgme.c;  ) > 1.9.12cvs41.patchset
index bd1879ba900d8a9d7ce95c29a542d56ff0d7a901..c6ab794f225b3afba41dc496d65c1f8aee55c6eb 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=12
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=40
+EXTRA_VERSION=41
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index 5b9ee133ba9c9c7a41c034884a0adea039ada788..8854155e6b1971f025279e4e930befcc0dcef6ab 100644 (file)
@@ -273,12 +273,12 @@ static MimeInfo *pgpmime_decrypt(MimeInfo *mimeinfo)
        gpgme_data_t cipher = NULL, plain = NULL;
        static gint id = 0;
        FILE *dstfp;
-       gint nread;
        gchar *fname;
-       gchar buf[BUFFSIZE];
        gpgme_verify_result_t sigstat = NULL;
        PrivacyDataPGP *data = NULL;
        gpgme_ctx_t ctx;
+       gchar *chars;
+       int len;
 
        if (gpgme_new(&ctx) != GPG_ERR_NO_ERROR)
                return NULL;
@@ -312,14 +312,10 @@ static MimeInfo *pgpmime_decrypt(MimeInfo *mimeinfo)
 
        fprintf(dstfp, "MIME-Version: 1.0\n");
 
-       while ((nread = gpgme_data_read(plain, buf, sizeof(buf))) > 0) {
-               debug_print("read %d:%s\n", nread, buf);
-               fwrite (buf, nread, 1, dstfp);
-       }
-       debug_print("nread %d!\n", nread);
+       chars = gpgme_data_release_and_get_mem(plain, &len);
+       if (len > 0)
+               fwrite(chars, len, 1, dstfp);
        fclose(dstfp);
-       
-       gpgme_data_release(plain);
 
        parseinfo = procmime_scan_file(fname);
        g_free(fname);
index 095bfdb1036052daa2265db3ec96dd29a8d1a8d4..bfbc6d091196c6b317e0aeeee8883fa309bd7563 100644 (file)
@@ -279,8 +279,7 @@ gpgme_data_t sgpgme_decrypt_verify(gpgme_data_t cipher, gpgme_verify_result_t *s
                return NULL;
        }
 
-       err = gpgme_data_rewind(plain); /* why doesn't gpgme_data_seek() work here?! */
-/*     err = gpgme_data_seek(plain, 0, SEEK_SET);*/
+       err = gpgme_data_seek(plain, 0, SEEK_SET);
        if (err) {
                debug_print("can't seek (%d %d %s)\n", err, errno, strerror(errno));
        }