summaryrefslogtreecommitdiff
path: root/src/libical/icalmime.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libical/icalmime.c')
-rw-r--r--src/libical/icalmime.c22
1 files changed, 10 insertions, 12 deletions
diff --git a/src/libical/icalmime.c b/src/libical/icalmime.c
index 41487a5..c902a59 100644
--- a/src/libical/icalmime.c
+++ b/src/libical/icalmime.c
@@ -38,9 +38,9 @@
#include "dmalloc.h"
#endif
-#ifdef WIN32
-#define snprintf _snprintf
-#define strcasecmp stricmp
+#if defined(_MSC_VER)
+#define snprintf _snprintf
+#define strcasecmp stricmp
#endif
/* These *_part routines are called by the MIME parser via the
@@ -53,7 +53,7 @@ struct text_part
size_t buf_size;
};
-void* icalmime_text_new_part()
+void* icalmime_text_new_part(void)
{
#define BUF_SIZE 2048
@@ -125,7 +125,7 @@ void icalmime_text_free_part(void *part)
/* Ignore Attachments for now */
-void* icalmime_attachment_new_part()
+void* icalmime_attachment_new_part(void)
{
return 0;
}
@@ -190,7 +190,7 @@ icalcomponent* icalmime_parse(char* (*get_string)(char *s, size_t size,
return 0;
}
- memset(parts,0,sizeof(parts));
+ memset(parts,0,sizeof(NUM_PARTS*sizeof(struct sspm_part)));
sspm_parse_mime(parts,
NUM_PARTS, /* Max parts */
@@ -341,14 +341,11 @@ line between the header and the previous boundary\?";
parent = last;
icalcomponent_add_component(parent,comp);
- last_level = parts[i].level;
-
} else if (parts[i].level < last_level){
- parent = icalcomponent_get_parent(parent);
+ if (parent)
+ parent = icalcomponent_get_parent(parent);
icalcomponent_add_component(parent,comp);
-
- last_level = parts[i].level;
} else {
assert(0);
}
@@ -379,7 +376,7 @@ int icalmime_test(char* (*get_string)(char *s, size_t size, void *d),
return 0;
}
- memset(parts,0,sizeof(parts));
+ memset(parts,0,sizeof(NUM_PARTS*sizeof(struct sspm_part)));
sspm_parse_mime(parts,
NUM_PARTS, /* Max parts */
@@ -399,6 +396,7 @@ int icalmime_test(char* (*get_string)(char *s, size_t size, void *d),
sspm_write_mime(parts,NUM_PARTS,&out,"To: bob@bob.org");
printf("%s\n",out);
+ free(out);
return 0;