Use the correct font to render subtitles in preview / burn-in (#663).
[dcpomatic.git] / src / lib / quickmail.cc
index 4584d4e3b3fae5659ba74628037b02ca4c0330af..39e724c6800cb81c68b8fcc975c4dc6b836c5ffb 100644 (file)
@@ -40,7 +40,7 @@
 #define MAILPART_END        5
 #define MAILPART_DONE       6
 
-static const char* default_mime_type = "text/plain";
+static const char* default_mime_type = "text/plain; charset=UTF-8";
 
 ////////////////////////////////////////////////////////////////////////
 
@@ -248,12 +248,12 @@ void email_info_attachment_list_close_handles (struct email_info_attachment_list
 
 //dummy attachment functions
 
-void* email_info_attachment_open_dummy (void* filedata)
+void* email_info_attachment_open_dummy (void *)
 {
        return (void *) &email_info_attachment_open_dummy;
 }
 
-size_t email_info_attachment_read_dummy (void* handle, void* buf, size_t len)
+size_t email_info_attachment_read_dummy (void *, void *, size_t)
 {
   return 0;
 }
@@ -488,6 +488,7 @@ char* quickmail_get_body (quickmail mailobj)
     do {
       if ((p = (char*)realloc(result, resultlen + BODY_BUFFER_SIZE)) == NULL) {
         free(result);
+       result = NULL;
         DEBUG_ERROR(ERRMSG_MEMORY_ALLOCATION_ERROR)
         break;
       }
@@ -569,11 +570,10 @@ void quickmail_set_debug_log (quickmail mailobj, FILE* filehandle)
 
 void quickmail_fsave (quickmail mailobj, FILE* filehandle)
 {
-  int i;
   size_t n;
   char buf[80];
   while ((n = quickmail_get_data(buf, sizeof(buf), 1, mailobj)) > 0) {
-    for (i = 0; i < n; i++)
+    for (size_t i = 0; i < n; i++)
       fprintf(filehandle, "%c", buf[i]);
   }
 }
@@ -606,7 +606,7 @@ size_t quickmail_get_data (void* ptr, size_t size, size_t nmemb, void* userp)
       //generate header part
       char** p = &mailobj->buf;
       mailobj->buf = NULL;
-      str_append(p, "User-Agent: libquickmail");
+      str_append(p, "User-Agent: libquickmail\n");
       if (mailobj->timestamp != 0) {
         char timestamptext[32];
         if (strftime(timestamptext, sizeof(timestamptext), "%a, %d %b %Y %H:%M:%S %z", localtime(&mailobj->timestamp))) {\r
@@ -826,7 +826,7 @@ size_t quickmail_get_data (void* ptr, size_t size, size_t nmemb, void* userp)
 
   //flush pending data if any
   if (mailobj->buflen > 0) {
-    int len = (mailobj->buflen > size * nmemb ? size * nmemb : mailobj->buflen);
+         int len = ((size_t) mailobj->buflen > size * nmemb ? size * nmemb : mailobj->buflen);
     memcpy(ptr, mailobj->buf, len);
     if (len < mailobj->buflen) {
       mailobj->buf = (char *) memmove(mailobj->buf, mailobj->buf + len, mailobj->buflen - len);