summaryrefslogtreecommitdiff
path: root/src/libicalvcal/vobject.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libicalvcal/vobject.c')
-rw-r--r--src/libicalvcal/vobject.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/libicalvcal/vobject.c b/src/libicalvcal/vobject.c
index e4fc7ad..af7647f 100644
--- a/src/libicalvcal/vobject.c
+++ b/src/libicalvcal/vobject.c
@@ -42,8 +42,8 @@ DFARS 252.227-7013 or 48 CFR 52.227-19, as applicable.
* vobject, and convert a vobject into its textual representation.
*/
-#ifdef WIN32
-#define snprintf _snprintf
+#if defined(_MSC_VER)
+#define snprintf _snprintf
#define strcasecmp stricmp
#endif
@@ -124,7 +124,7 @@ DLLEXPORT(void) deleteVObject(VObject *p)
free(p);
}
-DLLEXPORT(char*) dupStr(const char *s, unsigned int size)
+DLLEXPORT(char*) dupStr(const char *s, size_t size)
{
char *t;
if (size == 0) {
@@ -685,7 +685,7 @@ DLLEXPORT(void) cleanStrTbl()
p = t;
t = t->next;
deleteStrItem(p);
- } while (t);
+ }
strTbl[i] = 0;
}
}
@@ -1079,7 +1079,7 @@ static void appendcOFile(OFile *fp, char c)
static void appendsOFile(OFile *fp, const char *s)
{
- int i, slen;
+ size_t i, slen;
slen = strlen(s);
for (i=0; i<slen; i++) {
appendcOFile(fp,s[i]);
@@ -1247,9 +1247,11 @@ static void writeGroup(OFile *fp, VObject *o)
{
char buf1[256];
char buf2[256];
- strcpy(buf1,NAME_OF(o));
+ strncpy(buf1,NAME_OF(o),sizeof(buf1)-1);
+ buf1[sizeof(buf1)-1]='\0';
+
while ((o=isAPropertyOf(o,VCGroupingProp)) != 0) {
- strncpy(buf2,STRINGZ_VALUE_OF(o),sizeof(buf2));
+ strncpy(buf2,STRINGZ_VALUE_OF(o),sizeof(buf2)-1);
buf2[sizeof(buf2)-1] = '\0';
strncat(buf2,".",sizeof(buf2)-strlen(buf2)-1);
strncat(buf2,buf1,sizeof(buf2)-strlen(buf2)-1);
@@ -1404,10 +1406,10 @@ DLLEXPORT(char*) writeMemVObjects(char *s, int *len, VObject *list)
/*----------------------------------------------------------------------
APIs to do fake Unicode stuff.
----------------------------------------------------------------------*/
-DLLEXPORT(wchar_t*) fakeUnicode(const char *ps, int *bytes)
+DLLEXPORT(wchar_t*) fakeUnicode(const char *ps, size_t *bytes)
{
wchar_t *r, *pw;
- int len = strlen(ps)+1;
+ size_t len = strlen(ps)+1;
pw = r = (wchar_t*)malloc(sizeof(wchar_t)*len);
if (bytes)