Program: 103798
Project: 103798
Buggy source:
/** 
 * Creates a room with the named <tt>roomName</tt> and according to the specified <tt>roomProperties</tt> on the server that this protocol provider is currently connected to.
 * @param roomName the name of the <tt>ChatRoom</tt> to create.
 * @param roomProperties properties specifying how the room should becreated.
 * @throws OperationFailedException if the room couldn't be created forsome reason (e.g. room already exists; user already joined to an existent room or user has no permissions to create a chat room).
 * @throws OperationNotSupportedException if chat room creation is notsupported by this server
 * @return ChatRoom the chat room that we've just created.
 */
public ChatRoom createChatRoom(String roomName,Map<String,Object> roomProperties) throws OperationFailedException, OperationNotSupportedException {
  assertSupportedAndConnected();
  ChatRoom room=null;
  if (roomName == null)   roomName="String_Node_Str" + StringUtils.randomString(4);
 else   room=findRoom(roomName);
  if (room == null) {
    logger.info("String_Node_Str");
    MultiUserChat muc=new MultiUserChat(getXmppConnection(),getCanonicalRoomName(roomName));
    try {
      muc.create(StringUtils.parseName(getXmppConnection().getUser()));
      muc.sendConfigurationForm(new Form(Form.TYPE_SUBMIT));
    }
 catch (    XMPPException ex) {
      logger.error("String_Node_Str",ex);
      throw new OperationFailedException("String_Node_Str",ex.getXMPPError().getCode(),ex.getCause());
    }
    room=createLocalChatRoomInstance(muc);
    room.setUserRole(ChatRoomMemberRole.OWNER);
  }
  room.join();
  return room;
}

Fixed version (ground truth):
/** 
 * Creates a room with the named <tt>roomName</tt> and according to the specified <tt>roomProperties</tt> on the server that this protocol provider is currently connected to.
 * @param roomName the name of the <tt>ChatRoom</tt> to create.
 * @param roomProperties properties specifying how the room should becreated.
 * @throws OperationFailedException if the room couldn't be created forsome reason (e.g. room already exists; user already joined to an existent room or user has no permissions to create a chat room).
 * @throws OperationNotSupportedException if chat room creation is notsupported by this server
 * @return ChatRoom the chat room that we've just created.
 */
public ChatRoom createChatRoom(String roomName,Map<String,Object> roomProperties) throws OperationFailedException, OperationNotSupportedException {
  assertSupportedAndConnected();
  ChatRoom room=null;
  if (roomName == null)   roomName="String_Node_Str" + StringUtils.randomString(4);
 else   room=findRoom(roomName);
  if (room == null) {
    logger.info("String_Node_Str");
    MultiUserChat muc=new MultiUserChat(getXmppConnection(),getCanonicalRoomName(roomName));
    try {
      muc.create(StringUtils.parseName(getXmppConnection().getUser()));
      muc.sendConfigurationForm(new Form(Form.TYPE_SUBMIT));
    }
 catch (    XMPPException ex) {
      logger.error("String_Node_Str",ex);
      throw new OperationFailedException("String_Node_Str",ex.getXMPPError().getCode(),ex.getCause());
    }
    room=createLocalChatRoomInstance(muc);
    room.setUserRole(ChatRoomMemberRole.OWNER);
  }
  return room;
}