Program: 95167
Project: 95167
Buggy source:
@Override public void onDroneEvent(DroneInterfaces.DroneEventsType event,Drone drone){
  boolean showNotification=true;
switch (event) {
case CONNECTED:
    mHandler.removeCallbacks(mDismissNotification);
  final String summaryText=mContext.getString(R.string.connected);
mInboxBuilder=new InboxStyleBuilder().setSummary(summaryText);
mNotificationBuilder=new NotificationCompat.Builder(mContext).addAction(R.drawable.ic_action_io,mContext.getText(R.string.menu_disconnect),mToggleConnectionIntent).setContentIntent(mNotificationIntent).setContentText(summaryText).setOngoing(mAppPrefs.isNotificationPermanent()).setSmallIcon(R.drawable.ic_launcher);
updateFlightMode(drone);
updateDroneState(drone);
updateBattery(drone);
updateGps(drone);
updateHome(drone);
updateRadio(drone);
break;
case BATTERY:
updateBattery(drone);
break;
case GPS_FIX:
case GPS_COUNT:
updateGps(drone);
break;
case HOME:
updateHome(drone);
break;
case RADIO:
updateRadio(drone);
break;
case STATE:
updateDroneState(drone);
break;
case MODE:
case TYPE:
updateFlightMode(drone);
break;
case DISCONNECTED:
mInboxBuilder=null;
if (mNotificationBuilder != null) {
mNotificationBuilder=new NotificationCompat.Builder(mContext).addAction(R.drawable.ic_action_io,mContext.getText(R.string.menu_connect),mToggleConnectionIntent).setContentIntent(mNotificationIntent).setContentTitle(mContext.getString(R.string.disconnected)).setOngoing(false).setContentText("String_Node_Str").setSmallIcon(R.drawable.ic_launcher_bw);
mHandler.postDelayed(mDismissNotification,COUNTDOWN_TO_DISMISSAL);
}
break;
default :
showNotification=false;
break;
}
if (showNotification) {
showNotification();
}
}

Fixed version (ground truth):
@Override public void onDroneEvent(DroneInterfaces.DroneEventsType event,Drone drone){
  boolean showNotification=true;
switch (event) {
case CONNECTED:
    mHandler.removeCallbacks(mDismissNotification);
  final String summaryText=mContext.getString(R.string.connected);
mInboxBuilder=new InboxStyleBuilder().setSummary(summaryText);
mNotificationBuilder=new NotificationCompat.Builder(mContext).addAction(R.drawable.ic_action_io,mContext.getText(R.string.menu_disconnect),mToggleConnectionIntent).setContentIntent(mNotificationIntent).setContentText(summaryText).setOngoing(mAppPrefs.isNotificationPermanent()).setSmallIcon(R.drawable.ic_launcher);
updateFlightMode(drone);
updateDroneState(drone);
updateBattery(drone);
updateGps(drone);
updateHome(drone);
updateRadio(drone);
break;
case BATTERY:
updateBattery(drone);
break;
case GPS_FIX:
case GPS_COUNT:
updateGps(drone);
break;
case GPS:
case HOME:
updateHome(drone);
break;
case RADIO:
updateRadio(drone);
break;
case STATE:
updateDroneState(drone);
break;
case MODE:
case TYPE:
updateFlightMode(drone);
break;
case DISCONNECTED:
mInboxBuilder=null;
if (mNotificationBuilder != null) {
mNotificationBuilder=new NotificationCompat.Builder(mContext).addAction(R.drawable.ic_action_io,mContext.getText(R.string.menu_connect),mToggleConnectionIntent).setContentIntent(mNotificationIntent).setContentTitle(mContext.getString(R.string.disconnected)).setOngoing(false).setContentText("String_Node_Str").setSmallIcon(R.drawable.ic_launcher_bw);
mHandler.postDelayed(mDismissNotification,COUNTDOWN_TO_DISMISSAL);
}
break;
default :
showNotification=false;
break;
}
if (showNotification) {
showNotification();
}
}