// Callback for sql request when getting linphone content static int callback_content(void *data, int argc, char **argv, char **colName) { LinphoneChatMessage *message = (LinphoneChatMessage *)data; if (message->file_transfer_information) { linphone_content_uninit(message->file_transfer_information); ms_free(message->file_transfer_information); message->file_transfer_information = NULL; } message->file_transfer_information = (LinphoneContent *)malloc(sizeof(LinphoneContent)); memset(message->file_transfer_information, 0, sizeof(*(message->file_transfer_information))); message->file_transfer_information->type = argv[1] ? ms_strdup(argv[1]) : NULL; message->file_transfer_information->subtype = argv[2] ? ms_strdup(argv[2]) : NULL; message->file_transfer_information->name = argv[3] ? ms_strdup(argv[3]) : NULL; message->file_transfer_information->encoding = argv[4] ? ms_strdup(argv[4]) : NULL; message->file_transfer_information->size = (size_t) atoi(argv[5]); return 0; }
/** * Destroy a LinphoneInfoMessage **/ void linphone_info_message_destroy(LinphoneInfoMessage *im){ linphone_content_uninit(&im->content); sal_custom_header_free(im->headers); ms_free(im); }