b8303f22da89371b05a46134dfddbb3e9515c408
hiram
  Fri Mar 23 10:27:55 2018 -0700
better error message from axtChain when 2bit or nib arguments do not exist refs #20928

diff --git src/inc/portable.h src/inc/portable.h
index f8d3019..51b3069 100644
--- src/inc/portable.h
+++ src/inc/portable.h
@@ -153,30 +153,33 @@
 /* Return file last modification time.  The units of
  * these may vary from OS to OS, but you can depend on
  * later files having a larger time. */
 
 
 boolean isPipe(int fd);
 /* determine in an open file is a pipe  */
 
 boolean maybeTouchFile(char *fileName);
 /* If file exists, set its access and mod times to now.  If it doesn't exist, create it.
  * Return FALSE if we have a problem doing so. */
 
 void touchFileFromFile(const char *oldFile, const char *newFile);
 /* Set access and mod time of newFile from oldFile. */
 
+boolean isDirectory(char *pathName);
+/* Return TRUE if pathName is a directory. */
+
 boolean isRegularFile(char *fileName);
 /* Return TRUE if fileName is a regular file. */
 
 char *mustReadSymlinkExt(char *path, struct stat *sb);
 /* Read symlink or abort. FreeMem the returned value. */
 
 char *mustReadSymlink(char *path);
 /* Read symlink or abort. Checks that path is a symlink. 
 FreeMem the returned value. */
 
 void makeSymLink(char *oldName, char *newName);
 /* Return a symbolic link from newName to oldName or die trying */
 
 long long freeSpaceOnFileSystem(char *path);
 /* Given a path to a file or directory on a file system,  return free space