[CALC] Fix copy command when output is NaN (#7496)

CORE-19745
This commit is contained in:
Carlo Bramini 2024-11-10 17:01:34 +01:00 committed by GitHub
parent 0d6316b008
commit 30b40247a3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1015,10 +1015,16 @@ static void handle_copy_command(HWND hWnd)
TCHAR display[MAX_CALC_SIZE];
UINT n;
// Read current text from output display
n = GetDlgItemText(hWnd, IDC_TEXT_OUTPUT, display, SIZEOF(display));
if (calc.base == IDC_RADIO_DEC && _tcschr(calc.buffer, _T('.')) == NULL)
display[n - calc.sDecimal_len] = _T('\0');
// Check if result is a true number
if (!calc.is_nan)
{
// Remove trailing decimal point if no decimal digits exist
if (calc.base == IDC_RADIO_DEC && _tcschr(calc.buffer, _T('.')) == NULL)
display[n - calc.sDecimal_len] = _T('\0');
}
CopyMemToClipboard(display);
}