---------- Forwarded message --------- From: 杨奇 <[email protected]> Date: Sat, May 9, 2020 at 1:55 PM Subject: The linphone-desktop of windows version will crash if the sound card's name has Chinese characters To: <[email protected]>
I've created an issue at github, https://github.com/BelledonneCommunications/linphone-desktop/issues/363 The linphone-desktop of windows version will crash when open preferences if the sound card's name has Chinese characters. I build it by the master codes, and today's ci artifacts <https://gitlab.linphone.org/BC/public/linphone-desktop/-/jobs/238109/artifacts/download> will crash too. I try to fix it by calling setlocale before wcstombs_s in add_or_update_card . And I think the inputlen variable was not calculated correctly. Hope you can fix it, thanks. https://gitlab.linphone.org/BC/public/mswasapi/blob/master/mswasapi.cpp#L502 static void add_or_update_card(MSSndCardManager *m, bctbx_list_t **l, LPWSTR id, LPWSTR wname, EDataFlow data_flow) { MSSndCard *card; const bctbx_list_t *elem = *l; uint8_t capabilities = 0; char *idStr = NULL; char *nameStr = NULL; size_t inputlen; size_t returnlen; const char* locale = NULL; locale = setlocale(LC_ALL, ""); if (locale) { setlocale(LC_ALL, locale); } inputlen = (wcslen(wname) + 1) * 2; nameStr = (char *)ms_malloc(inputlen); if (!nameStr || wcstombs_s(&returnlen, nameStr, inputlen, wname, inputlen) != 0) { ms_error("mswasapi: Cannot convert card name to multi-byte string."); goto error; } inputlen = (wcslen(id) + 1) * 2;
_______________________________________________ Linphone-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/linphone-users
