Use the correct data type for the range string in the Win32 file dialog.

Have value_is_in_range() to gracefully handle a NULL range. This might
fix bug 3208.

svn path=/trunk/; revision=27281
This commit is contained in:
Gerald Combs 2009-01-20 23:33:38 +00:00
parent b82ef98f4b
commit 5ff80e9b5f
2 changed files with 7 additions and 5 deletions

View File

@ -245,9 +245,11 @@ gboolean value_is_in_range(range_t *range, guint32 val)
{
guint i;
for (i=0; i < range->nranges; i++) {
if (val >= range->ranges[i].low && val <= range->ranges[i].high)
return TRUE;
if (range) {
for (i=0; i < range->nranges; i++) {
if (val >= range->ranges[i].low && val <= range->ranges[i].high)
return TRUE;
}
}
return(FALSE);
}

View File

@ -1545,7 +1545,7 @@ range_handle_wm_initdialog(HWND dlg_hwnd, packet_range_t *range) {
static void
range_handle_wm_command(HWND dlg_hwnd, HWND ctrl, WPARAM w_param, packet_range_t *range) {
HWND cur_ctrl;
gchar range_text[RANGE_TEXT_MAX];
TCHAR range_text[RANGE_TEXT_MAX];
switch(w_param) {
case (BN_CLICKED << 16) | EWFD_CAPTURED_BTN:
@ -1595,7 +1595,7 @@ range_handle_wm_command(HWND dlg_hwnd, HWND ctrl, WPARAM w_param, packet_range_t
break;
case (EN_CHANGE << 16) | EWFD_RANGE_EDIT:
SendMessage(ctrl, WM_GETTEXT, (WPARAM) RANGE_TEXT_MAX, (LPARAM) range_text);
packet_range_convert_str(range, utf_16to8((unsigned short *) range_text));
packet_range_convert_str(range, utf_16to8(range_text));
range_update_dynamics(dlg_hwnd, range);
break;
}