diff options
author | George Hazan <george.hazan@gmail.com> | 2024-04-09 15:37:56 +0300 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2024-04-09 15:37:56 +0300 |
commit | 2372899bd100889437edf20d10ca91cfb97db7e3 (patch) | |
tree | 3132f6a0a0692e1002f50dd1ae9547057f6c5c68 /src | |
parent | af44d1a42ade597fe5a716e4c1e35964f9d4b843 (diff) |
fixes #4323 (Clist_modern: плагин не позволяет перетащить файл на контакт, который не в сети)
Diffstat (limited to 'src')
-rw-r--r-- | src/mir_app/src/clcfiledrop.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mir_app/src/clcfiledrop.cpp b/src/mir_app/src/clcfiledrop.cpp index 6ee2cb1d8a..4e708e2b40 100644 --- a/src/mir_app/src/clcfiledrop.cpp +++ b/src/mir_app/src/clcfiledrop.cpp @@ -85,8 +85,12 @@ static MCONTACT HContactFromPoint(HWND hwnd, ClcData *dat, int x, int y, int *hi uint32_t protoCaps = CallProtoService(szProto, PS_GETCAPS, PFLAGNUM_1);
if (!(protoCaps & PF1_FILESEND))
return 0;
- if (ID_STATUS_OFFLINE == db_get_w(contact->hContact, szProto, "Status", ID_STATUS_OFFLINE))
- return 0;
+
+ if (ID_STATUS_OFFLINE == db_get_w(contact->hContact, szProto, "Status", ID_STATUS_OFFLINE)) {
+ protoCaps = CallProtoService(szProto, PS_GETCAPS, PFLAGNUM_4);
+ if (!(protoCaps & PF4_OFFLINEFILES))
+ return 0;
+ }
if (hitLine)
*hitLine = hit;
return contact->hContact;
|