From d7c9eb34f80f207efd47d2fc65e31aedf166c323 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sat, 5 Jun 2021 17:50:34 +0300 Subject: major code cleaning in regard to db_event_getBlobSize & event memory allocation --- src/core/stdfile/src/filerecvdlg.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'src/core/stdfile') diff --git a/src/core/stdfile/src/filerecvdlg.cpp b/src/core/stdfile/src/filerecvdlg.cpp index d9b54d4f8a..a1e11bafb5 100644 --- a/src/core/stdfile/src/filerecvdlg.cpp +++ b/src/core/stdfile/src/filerecvdlg.cpp @@ -222,12 +222,9 @@ INT_PTR CALLBACK DlgProcRecvFile(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM l db_event_markRead(dat->hContact, dat->hDbEvent); - DBEVENTINFO dbei = {}; - dbei.cbBlob = db_event_getBlobSize(dat->hDbEvent); - if (dbei.cbBlob > 4 && dbei.cbBlob <= 8196) { - dbei.pBlob = (PBYTE)alloca(dbei.cbBlob + 1); - db_event_get(dat->hDbEvent, &dbei); - dbei.pBlob[dbei.cbBlob] = 0; + DB::EventInfo dbei; + dbei.cbBlob = -1; + if (!db_event_get(dat->hDbEvent, &dbei)) { dat->fs = cle->lParam ? (HANDLE)cle->lParam : (HANDLE)*(PDWORD)dbei.pBlob; char *str = (char*)dbei.pBlob + 4; -- cgit v1.2.3