/[winpt]/trunk/Src/wptGPGMEData.cpp
ViewVC logotype

Diff of /trunk/Src/wptGPGMEData.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 454 by twoaday, Thu Dec 1 20:10:25 2011 UTC revision 455 by twoaday, Thu Aug 2 20:01:53 2012 UTC
# Line 159  is_armor_header (const char *line) Line 159  is_armor_header (const char *line)
159          "MessageID:",          "MessageID:",
160          NULL          NULL
161      };      };
     int i;  
162    
163      for (i=0; header[i] != NULL; i++) {      for (size_t i=0; header[i] != NULL; i++) {
164          if (!strncmp (line, header[i], strlen (header[i])))          if (!strncmp (line, header[i], strlen (header[i])))
165              return -1;              return -1;
166      }      }
# Line 217  gpg_data_extract_plaintext (gpgme_data_t Line 216  gpg_data_extract_plaintext (gpgme_data_t
216  gpgme_error_t  gpgme_error_t
217  gpg_data_release_and_set_file (gpgme_data_t dh, const char *fname)  gpg_data_release_and_set_file (gpgme_data_t dh, const char *fname)
218  {  {
     size_t n;  
       
219      FILE *fp = fopen (fname, "wb");      FILE *fp = fopen (fname, "wb");
220      if (fp == NULL)      if (fp == NULL)
221          return gpg_error (GPG_ERR_ENOENT);          return gpg_error (GPG_ERR_ENOENT);
222            
223        size_t n;
224      char *p = gpgme_data_release_and_get_mem (dh, &n);      char *p = gpgme_data_release_and_get_mem (dh, &n);
225      if (p != NULL) {      if (p != NULL) {
226          fwrite (p, 1, n, fp);          fwrite (p, 1, n, fp);
# Line 239  gpg_data_release_and_set_file (gpgme_dat Line 237  gpg_data_release_and_set_file (gpgme_dat
237     gpgme data object @dh into @line.     gpgme data object @dh into @line.
238     Return value: numbers of chars read. */     Return value: numbers of chars read. */
239  size_t  size_t
240  gpg_data_readline (gpgme_data_t dh, char *line, size_t nbytes)  gpg_data_readline (gpgme_data_t dh, char *line, size_t maxbytes)
241  {  {
242      char ch = 0;      char ch = 0;
243      int nread = 0, pos = 0;      int nread = 0, pos = 0;
# Line 247  gpg_data_readline (gpgme_data_t dh, char Line 245  gpg_data_readline (gpgme_data_t dh, char
245      if (!dh)      if (!dh)
246          return 0;          return 0;
247            
248      memset (line, 0, nbytes);      memset (line, 0, maxbytes);
249      while ((nread=gpgme_data_read (dh, &ch, 1)) > 0) {      while ((nread=gpgme_data_read (dh, &ch, 1)) > 0) {
250          if (!nread)          if (!nread)
251              break;              break;
# Line 257  gpg_data_readline (gpgme_data_t dh, char Line 255  gpg_data_readline (gpgme_data_t dh, char
255              break;              break;
256          }          }
257          line[pos++] = ch;          line[pos++] = ch;
258          if (pos > (int)nbytes) {          if (pos > (int)maxbytes-1) {
259              line[pos++] = '\0';              line[pos] = '\0';
260              break;              break;
261          }          }
262      }      }

Legend:
Removed from v.454  
changed lines
  Added in v.455

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26