Program: 72884
Project: 72884
Buggy source:
/** 
 * OMC which is coupled to Ptolemy II is called to initialize the OMC server and simulate the Modelica model, then exchange data via BSD socket. TODO it should be detailed.
 * @param args Not used.
 * @throws IllegalActionException
 * @throws IOException
 */
public static void main(String[] args) throws IllegalActionException, IOException {
  try {
    _omcProxy.initServer();
  }
 catch (  ConnectException ex) {
    throw new IllegalActionException("String_Node_Str");
  }
  try {
    _omcProxy.loadFile("String_Node_Str","String_Node_Str");
  }
 catch (  ConnectException e) {
    throw new IllegalActionException("String_Node_Str");
  }
  try {
    _omcProxy.simulateModel("String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str",500,"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str");
  }
 catch (  Throwable throwable) {
    throw new IllegalActionException("String_Node_Str");
  }
  _utilSocket=UtilSocket.getInstance();
  if (!_utilSocket.establishclientsocket()) {
    try {
      _omcProxy.quitServer();
      System.out.println("String_Node_Str");
    }
 catch (    ConnectException ex) {
      throw new IllegalActionException("String_Node_Str");
    }
  }
 else {
    _utilSocket.exchangewithsocket();
    _utilSocket.closesocket();
    try {
      _omcProxy.quitServer();
      System.out.println("String_Node_Str");
    }
 catch (    ConnectException ex) {
      throw new IllegalActionException("String_Node_Str");
    }
  }
}

Fixed version (ground truth):
/** 
 * OMC which is coupled to Ptolemy II is called to initialize the OMC server and simulate the Modelica model, then exchange data via BSD socket. TODO it should be detailed.
 * @param args Not used.
 * @throws IllegalActionException
 * @throws IOException
 */
public static void main(String[] args) throws IllegalActionException, IOException {
  try {
    _omcProxy.initServer();
  }
 catch (  ConnectException ex) {
    throw new IllegalActionException("String_Node_Str");
  }
  try {
    _omcProxy.loadFile("String_Node_Str","String_Node_Str");
  }
 catch (  ConnectException e) {
    throw new IllegalActionException("String_Node_Str");
  }
  try {
    _omcProxy.simulateModel("String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str",500,"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str");
  }
 catch (  Throwable throwable) {
    throw new IllegalActionException(null,throwable,"String_Node_Str");
  }
  _utilSocket=UtilSocket.getInstance();
  if (!_utilSocket.establishclientsocket()) {
    try {
      _omcProxy.quitServer();
      System.out.println("String_Node_Str");
    }
 catch (    ConnectException ex) {
      throw new IllegalActionException(null,ex,"String_Node_Str");
    }
  }
 else {
    try {
      _utilSocket.exchangewithsocket();
    }
 catch (    Throwable throwable) {
      throw new IllegalActionException(null,throwable,"String_Node_Str");
    }
    _utilSocket.closesocket();
    try {
      _omcProxy.quitServer();
      System.out.println("String_Node_Str");
    }
 catch (    ConnectException ex) {
      throw new IllegalActionException(null,ex,"String_Node_Str");
    }
  }
}