mirror of
https://github.com/reactos/reactos.git
synced 2024-09-30 14:37:45 +00:00
Patch by Andrey Janzen (virus126).
Fix copy\paste bug in calc. svn path=/trunk/; revision=25830
This commit is contained in:
parent
e565b89550
commit
4ea3e26092
|
@ -476,18 +476,23 @@ LRESULT WINAPI MainProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||||
if (!(len = _tcslen(calc.display)))
|
if (!(len = _tcslen(calc.display)))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
if (!(s = calc.display))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
if (s[len - 1] == TEXT('.') || s[len - 1] == TEXT(','))
|
||||||
|
len--;
|
||||||
|
|
||||||
if (!(hGlobalMemory = GlobalAlloc(GHND, (len + 1) * sizeof(TCHAR))))
|
if (!(hGlobalMemory = GlobalAlloc(GHND, (len + 1) * sizeof(TCHAR))))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (!(pGlobalMemory = GlobalLock(hGlobalMemory)))
|
if (!(pGlobalMemory = GlobalLock(hGlobalMemory)))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (!(s = calc.display))
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
for (i = 0; i < len; i++)
|
for (i = 0; i < len; i++)
|
||||||
*pGlobalMemory++ = *s++;
|
*pGlobalMemory++ = *s++;
|
||||||
|
|
||||||
|
pGlobalMemory[len - 1] = 0;
|
||||||
|
|
||||||
GlobalUnlock(hGlobalMemory); // call GetLastError() for exception handling
|
GlobalUnlock(hGlobalMemory); // call GetLastError() for exception handling
|
||||||
|
|
||||||
if (!OpenClipboard(hWnd))
|
if (!OpenClipboard(hWnd))
|
||||||
|
@ -496,7 +501,7 @@ LRESULT WINAPI MainProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||||
if (!EmptyClipboard())
|
if (!EmptyClipboard())
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (!SetClipboardData(CF_TEXT, hGlobalMemory))
|
if (!SetClipboardData(CF_TTEXT, hGlobalMemory))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (!CloseClipboard())
|
if (!CloseClipboard())
|
||||||
|
@ -514,11 +519,11 @@ LRESULT WINAPI MainProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||||
HGLOBAL hGlobalMemory;
|
HGLOBAL hGlobalMemory;
|
||||||
LPTSTR pGlobalMemory;
|
LPTSTR pGlobalMemory;
|
||||||
|
|
||||||
if (IsClipboardFormatAvailable(CF_TEXT)) {
|
if (IsClipboardFormatAvailable(CF_TTEXT)) {
|
||||||
if (!OpenClipboard(hWnd))
|
if (!OpenClipboard(hWnd))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (!(hGlobalMemory = GetClipboardData(CF_TEXT)))
|
if (!(hGlobalMemory = GetClipboardData(CF_TTEXT)))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (!(size = GlobalSize(hGlobalMemory)))
|
if (!(size = GlobalSize(hGlobalMemory)))
|
||||||
|
|
|
@ -20,6 +20,12 @@
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#ifdef UNICODE
|
||||||
|
#define CF_TTEXT CF_UNICODETEXT
|
||||||
|
#else
|
||||||
|
#define CF_TTEXT CF_TEXT
|
||||||
|
#endif
|
||||||
|
|
||||||
// numerics are defined here for easier porting
|
// numerics are defined here for easier porting
|
||||||
|
|
||||||
typedef double calcfloat;
|
typedef double calcfloat;
|
||||||
|
|
Loading…
Reference in a new issue