| 600 if (slpmsg->fp) |
601 if (slpmsg->fp) |
| 601 { |
602 { |
| 602 /* fseek(slpmsg->fp, offset, SEEK_SET); */ |
603 /* fseek(slpmsg->fp, offset, SEEK_SET); */ |
| 603 len = fwrite(data, 1, len, slpmsg->fp); |
604 len = fwrite(data, 1, len, slpmsg->fp); |
| 604 } |
605 } |
| 605 else if (slpmsg->size) |
606 else if (slpmsg->size && slpmsg->buffer) |
| 606 { |
607 { |
| 607 if (G_MAXSIZE - len < offset || (offset + len) > slpmsg->size) |
608 if (G_MAXSIZE - len < offset || (offset + len) > slpmsg->size) |
| 608 { |
609 { |
| 609 purple_debug_error("msn", "Oversized slpmsg\n"); |
610 purple_debug_error("msn", "Oversized slpmsg\n"); |
| 610 g_return_if_reached(); |
611 g_return_if_reached(); |