###############################################################################
# Copyright (c) 2000, 2010, 2012 QNX Software Systems and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
###############################################################################
Util.exception.cannotCreatePty=Cannot create pty
Util.exception.cannotSetTerminalSize=Setting terminal size is not supported
Util.error.cannotRun=Cannot run program "{0}": {1}
Util.exception.closeError=close error