Просмотр исходного кода

Only dispatch a callback if it is non-null.

(Logical change 1.158)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@550 fd59a12c-fef9-0310-b244-a6a79926bd2f
Mark Haverkamp 21 лет назад
Родитель
Сommit
6b9a85376c
1 измененных файлов с 15 добавлено и 3 удалено
  1. 15 3
      lib/evt.c

+ 15 - 3
lib/evt.c

@@ -608,8 +608,14 @@ saEvtDispatch(
 			if (error != SA_AIS_OK) {
 			if (error != SA_AIS_OK) {
 					break;
 					break;
 			}
 			}
-			callbacks.saEvtEventDeliverCallback(evt->led_sub_id, event_handle,
-							evt->led_user_data_size);
+
+			/*
+			 * Only call if there was a function registered
+			 */
+			if (callbacks.saEvtEventDeliverCallback) {
+				callbacks.saEvtEventDeliverCallback(evt->led_sub_id, 
+						event_handle, evt->led_user_data_size);
+			}
 			break;
 			break;
 
 
 		case MESSAGE_RES_EVT_CHAN_OPEN_CALLBACK:
 		case MESSAGE_RES_EVT_CHAN_OPEN_CALLBACK:
@@ -635,8 +641,14 @@ saEvtDispatch(
 							resa->ica_c_handle);
 							resa->ica_c_handle);
 				}
 				}
 			}
 			}
-			callbacks.saEvtChannelOpenCallback(resa->ica_invocation,
+
+			/*
+			 * Only call if there was a function registered
+			 */
+			if (callbacks.saEvtChannelOpenCallback) {
+				callbacks.saEvtChannelOpenCallback(resa->ica_invocation,
 					resa->ica_c_handle, error);
 					resa->ica_c_handle, error);
+			}
 
 
 		}
 		}
 			break;
 			break;