diff options
author | Dan Williams <dcbw@redhat.com> | 2010-01-19 03:16:34 -0800 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2010-01-19 03:18:10 -0800 |
commit | 50ad39b28e61adb3d9da178c47e41100f554adeb (patch) | |
tree | 0dad5f389015412d5f6c0ecd02fd6ec6d486e9c4 /src/mm-errors.c | |
parent | 73e10c77d37791ed4a1f51ee8c1007600ef24bde (diff) |
core: protect against modem removal in critical callbacks (rh #553953)
There are more places to handle, but these are the most critical. If
the modem is removed while a command is in-progress, the mm-callback-info
code will set info->modem to NULL. Make sure we check for that in
callbacks and return a reasonable error. Previous code would just
blindly forge ahead and die on a null dereference.
Diffstat (limited to 'src/mm-errors.c')
-rw-r--r-- | src/mm-errors.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mm-errors.c b/src/mm-errors.c index 6448b807..34f56c19 100644 --- a/src/mm-errors.c +++ b/src/mm-errors.c @@ -11,7 +11,7 @@ * GNU General Public License for more details: * * Copyright (C) 2008 Novell, Inc. - * Copyright (C) 2009 Red Hat, Inc. + * Copyright (C) 2009 - 2010 Red Hat, Inc. */ #include "mm-errors.h" @@ -72,6 +72,7 @@ mm_modem_error_get_type (void) ENUM_ENTRY (MM_MODEM_ERROR_CONNECTED, "Connected"), ENUM_ENTRY (MM_MODEM_ERROR_DISCONNECTED, "Disconnected"), ENUM_ENTRY (MM_MODEM_ERROR_OPERATION_IN_PROGRESS, "OperationInProgress"), + ENUM_ENTRY (MM_MODEM_ERROR_REMOVED, "Removed"), { 0, 0, 0 } }; |