From 1bd8a05fc766f007574f32f7fdcc6c468c991315 Mon Sep 17 00:00:00 2001 From: Alexey Kulakov Date: Sat, 14 Feb 2015 20:59:32 +0000 Subject: QuickSearch: trying to fix service param type bug git-svn-id: http://svn.miranda-ng.org/main/trunk@12110 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/QuickSearch/i_ok.inc | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'plugins/QuickSearch/i_ok.inc') diff --git a/plugins/QuickSearch/i_ok.inc b/plugins/QuickSearch/i_ok.inc index 00918a0ffb..a5bdf7c715 100644 --- a/plugins/QuickSearch/i_ok.inc +++ b/plugins/QuickSearch/i_ok.inc @@ -262,6 +262,7 @@ procedure LoadOneItem(hContact:THANDLE;column:pcolumnitem;proto:integer; var res var tmp:int_ptr; lmodule,srv:PAnsiChar; + lwparam,llparam:TLPARAM; DbEvent:TMEVENT; cni:TCONTACTINFO; dbei:TDBEVENTINFO; @@ -278,14 +279,25 @@ begin end; QST_SERVICE: begin - if wparam._type=ACF_CURRENT then wparam.value:=hContact; - if lparam._type=ACF_CURRENT then lparam.value:=hContact; + case wparam._type of + ACF_CURRENT: lwparam:=hContact; + ACF_NUMBER : lwparam:=NumToInt(wparam.value); + else + lwparam:=TLPARAM(wparam.value); + end; + case lparam._type of + ACF_CURRENT: llparam:=hContact; + ACF_NUMBER : llparam:=NumToInt(lparam.value); + else + llparam:=TLPARAM(lparam.value); + end; if (restype and ACF_SCRIPT_SERVICE)<>0 then srv:=ParseVarString(service,hContact,nil) else srv:=service; - tmp:=int_ptr(CallService(srv,TWPARAM(wparam.value),TLPARAM(lparam.value))); + + tmp:=int_ptr(CallService(srv,TWPARAM(lwparam),TLPARAM(llparam))); if (restype and ACF_SCRIPT_SERVICE)<>0 then mFreeMem(srv); -- cgit v1.2.3