Program: 146495
Project: 146495
Buggy source:
@Override protected void onPostExecute(JSONObject jsonObject){
  if (jsonObject != null) {
    try {
      AppWidgetManager appWidgetManager=AppWidgetManager.getInstance(mContext);
      for (      int x : mMap.keySet()) {
        RemoteViews views=new RemoteViews(mContext.getPackageName(),R.layout.appwidget_layout);
        double price=jsonObject.getJSONObject(mMap.get(x).replace("String_Node_Str","String_Node_Str").toLowerCase(Locale.US)).getDouble("String_Node_Str");
        String priceString;
        if (price > 1) {
          priceString=(new DecimalFormat("String_Node_Str")).format(price);
        }
 else {
          priceString=String.valueOf(price);
        }
        views.setTextViewText(R.id.widgetCurrencyValue,priceString);
        views.setTextViewText(R.id.widgetPair,mMap.get(x));
        String color=jsonObject.getJSONObject(mMap.get(x).replace("String_Node_Str","String_Node_Str").toLowerCase(Locale.US)).getString("String_Node_Str");
        int colorValue=color.equals("String_Node_Str") ? Color.GREEN : Color.RED;
        views.setTextColor(R.id.widgetCurrencyValue,colorValue);
        Intent intent=new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
        Bundle bundle=new Bundle();
        bundle.putIntArray(AppWidgetManager.EXTRA_APPWIDGET_IDS,appWidgetManager.getAppWidgetIds(new ComponentName(mContext,WidgetProvider.class)));
        intent.putExtras(bundle);
        PendingIntent pi=PendingIntent.getBroadcast(mContext,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
        views.setOnClickPendingIntent(R.id.widgetContainer,pi);
        SimpleDateFormat df=new SimpleDateFormat("String_Node_Str",Locale.US);
        Calendar calendar=Calendar.getInstance();
        views.setTextViewText(R.id.widgetDate,df.format(calendar.getTime()));
        appWidgetManager.updateAppWidget(x,views);
      }
    }
 catch (    JSONException e) {
      e.printStackTrace();
    }
  }
}

Fixed version (ground truth):
@Override protected void onPostExecute(JSONObject jsonObject){
  if (jsonObject != null) {
    try {
      Context context=mContext.get();
      if (context == null) {
        return;
      }
      AppWidgetManager appWidgetManager=AppWidgetManager.getInstance(context);
      for (      int x : mMap.keySet()) {
        RemoteViews views=new RemoteViews(context.getPackageName(),R.layout.appwidget_layout);
        double price=jsonObject.getJSONObject(mMap.get(x).replace("String_Node_Str","String_Node_Str").toLowerCase(Locale.US)).getDouble("String_Node_Str");
        String priceString;
        if (price > 1) {
          priceString=(new DecimalFormat("String_Node_Str")).format(price);
        }
 else {
          priceString=String.valueOf(price);
        }
        views.setTextViewText(R.id.widgetCurrencyValue,priceString);
        views.setTextViewText(R.id.widgetPair,mMap.get(x));
        String color=jsonObject.getJSONObject(mMap.get(x).replace("String_Node_Str","String_Node_Str").toLowerCase(Locale.US)).getString("String_Node_Str");
        int colorValue=color.equals("String_Node_Str") ? Color.GREEN : Color.RED;
        views.setTextColor(R.id.widgetCurrencyValue,colorValue);
        Intent intent=new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
        Bundle bundle=new Bundle();
        bundle.putIntArray(AppWidgetManager.EXTRA_APPWIDGET_IDS,appWidgetManager.getAppWidgetIds(new ComponentName(context,WidgetProvider.class)));
        intent.putExtras(bundle);
        PendingIntent pi=PendingIntent.getBroadcast(context,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
        views.setOnClickPendingIntent(R.id.widgetContainer,pi);
        SimpleDateFormat df=new SimpleDateFormat("String_Node_Str",Locale.US);
        Calendar calendar=Calendar.getInstance();
        views.setTextViewText(R.id.widgetDate,df.format(calendar.getTime()));
        appWidgetManager.updateAppWidget(x,views);
      }
    }
 catch (    JSONException e) {
      e.printStackTrace();
    }
  }
}