diff --git a/src/sbbs3/mime.c b/src/sbbs3/mime.c index 2685efc07a1cf6eca67782b4d60ec02daff12d03..dfba7322d2985985896838f839ad78fa0feda0b8 100644 --- a/src/sbbs3/mime.c +++ b/src/sbbs3/mime.c @@ -122,7 +122,10 @@ BOOL base64out(SOCKET socket, char * pathfile) else strcat(line,out); if(i==18) { - sockprintf(socket,line); + if(!sockprintf(socket,line)) { + fclose(fp); + return(FALSE); + } i=-1; } if(bytesread!=3 || feof(fp)) @@ -130,10 +133,10 @@ BOOL base64out(SOCKET socket, char * pathfile) i++; memset(in,0,3); } + fclose(fp); if(i!=-1) /* already printed the last line */ sockprintf(socket,line); sockprintf(socket,""); - fclose(fp); return(TRUE); } @@ -170,7 +173,7 @@ BOOL mimeattach(SOCKET socket, char * boundary, char * pathfile) void endmime(SOCKET socket, char * boundary) { - char bndline[41]; + char bndline[128]; strcpy(bndline,"--"); strcat(bndline,boundary);