Program: 73375
Project: 73375
Buggy source:
public static void main(String[] args) throws Exception {
  IplImage src_img=cvLoadImage("String_Node_Str",1);
  IplImage src_gray=cvCreateImage(cvGetSize(src_img),IPL_DEPTH_8U,1);
  cvCvtColor(src_img,src_gray,CV_BGR2GRAY);
  cvEqualizeHist(src_gray,src_gray);
  String libname=cv.libname;
  String version="String_Node_Str";
  System.out.println(libname);
  if (libname.indexOf(version) > 0) {
    System.out.println("String_Node_Str");
  }
  String cascade_name="String_Node_Str";
  CvHaarClassifierCascade cascade=new CvHaarClassifierCascade(cvLoad(cascade_name,null,null,null));
  CvMemStorage storage=cvCreateMemStorage(0);
  cvClearMemStorage(storage);
  CvSize size=new CvSize(40,40);
  CvSeq faces=cvHaarDetectObjects(src_gray,cascade,storage,1.11,4,0,size.byValue());
  int i=0;
  int faceTotal=0;
  if (faces != null)   faceTotal=faces.total;
  CvScalar.ByValue[] colors={CvScalar.RED,CvScalar.BLUE,CvScalar.GREEN,CvScalar.CYAN,CvScalar.YELLOW,CvScalar.MAGENTA,CvScalar.WHITE,CvScalar.GRAY};
  for (i=0; i < faceTotal; i++) {
    Pointer r=cvGetSeqElem(faces,i);
    CvRect rect=new CvRect(r);
    CvPoint center=new CvPoint(0,0);
    int radius;
    center.x=(int)round(rect.x + rect.width * 0.5);
    center.y=(int)round(rect.y + rect.height * 0.5);
    radius=(int)round((rect.width + rect.height) * 0.25);
    cvCircle(src_img,center.byValue(),radius,colors[i % 8],3,8,0);
  }
  cvSaveImage("String_Node_Str",src_img);
  cvReleaseImage(src_img.pointerByReference());
  cvReleaseImage(src_gray.pointerByReference());
  cvReleaseMemStorage(storage.pointerByReference());
  System.out.println("String_Node_Str");
}

Fixed version (ground truth):
public static void main(String[] args) throws Exception {
  IplImage src_img=cvLoadImage("String_Node_Str",1);
  IplImage src_gray=cvCreateImage(cvGetSize(src_img),IPL_DEPTH_8U,1);
  cvCvtColor(src_img,src_gray,CV_BGR2GRAY);
  cvEqualizeHist(src_gray,src_gray);
  String libname=cv.libname;
  String version="String_Node_Str";
  System.out.println(libname);
  if (libname.indexOf(version) >= 0) {
    System.out.println("String_Node_Str");
  }
  String cascade_name="String_Node_Str";
  CvHaarClassifierCascade cascade=new CvHaarClassifierCascade(cvLoad(cascade_name,null,null,null));
  CvMemStorage storage=cvCreateMemStorage(0);
  cvClearMemStorage(storage);
  CvSize size=new CvSize(40,40);
  CvSeq faces=cvHaarDetectObjects(src_gray,cascade,storage,1.11,4,0,size.byValue());
  int i=0;
  int faceTotal=0;
  if (faces != null)   faceTotal=faces.total;
  CvScalar.ByValue[] colors={CvScalar.RED,CvScalar.BLUE,CvScalar.GREEN,CvScalar.CYAN,CvScalar.YELLOW,CvScalar.MAGENTA,CvScalar.WHITE,CvScalar.GRAY};
  for (i=0; i < faceTotal; i++) {
    Pointer r=cvGetSeqElem(faces,i);
    CvRect rect=new CvRect(r);
    CvPoint center=new CvPoint(0,0);
    int radius;
    center.x=(int)round(rect.x + rect.width * 0.5);
    center.y=(int)round(rect.y + rect.height * 0.5);
    radius=(int)round((rect.width + rect.height) * 0.25);
    cvCircle(src_img,center.byValue(),radius,colors[i % 8],3,8,0);
  }
  cvSaveImage("String_Node_Str",src_img);
  cvReleaseImage(src_img.pointerByReference());
  cvReleaseImage(src_gray.pointerByReference());
  cvReleaseMemStorage(storage.pointerByReference());
  System.out.println("String_Node_Str");
}