os defs; osx fix
authorClaus Gittinger <cg@exept.de>
Mon, 05 Mar 2018 15:19:40 +0100
changeset 22578 c31e7ac76ff5
parent 22577 d47c7e41eda5
child 22579 bae0a1a089a4
os defs; osx fix
DirectoryStream.st
ExternalStream.st
Float.st
UnixOperatingSystem.st
--- a/DirectoryStream.st	Mon Mar 05 15:01:10 2018 +0100
+++ b/DirectoryStream.st	Mon Mar 05 15:19:40 2018 +0100
@@ -56,7 +56,7 @@
 
 # ifdef HAS_OPENDIR
 #  include <sys/types.h>
-#  ifdef NEXT
+#  ifdef __NEXT__
 #   include <sys/dir.h>
 #   define DIRENT_STRUCT        struct direct
 #  else
@@ -587,135 +587,135 @@
 
     ok = false;
     if (__INST(dirPointer) == nil) {
-        if (__isStringLike(encodedPathName)) {
-            __BEGIN_INTERRUPTABLE__
-            __threadErrno = 0;
-            do {
-                d = opendir((char *) __stringVal(encodedPathName));
-            } while ((d == NULL) && (__threadErrno == EINTR));
-            __END_INTERRUPTABLE__
+	if (__isStringLike(encodedPathName)) {
+	    __BEGIN_INTERRUPTABLE__
+	    __threadErrno = 0;
+	    do {
+		d = opendir((char *) __stringVal(encodedPathName));
+	    } while ((d == NULL) && (__threadErrno == EINTR));
+	    __END_INTERRUPTABLE__
 
-            if (d == NULL) {
-                error = __mkSmallInteger(__threadErrno);
-            } else {
-                dp = __MKEXTERNALADDRESS(d); __INST(dirPointer) = dp; __STORE(self, dp);
-                ok = true;
-            }
-        }
+	    if (d == NULL) {
+		error = __mkSmallInteger(__threadErrno);
+	    } else {
+		dp = __MKEXTERNALADDRESS(d); __INST(dirPointer) = dp; __STORE(self, dp);
+		ok = true;
+	    }
+	}
     }
 #else
 #ifdef __win32__
     HANDLE d;
     OBJ path, dp;
     union {
-        char pattern[MAXPATHLEN];
-        wchar_t wpattern[MAXPATHLEN];
+	char pattern[MAXPATHLEN];
+	wchar_t wpattern[MAXPATHLEN];
     } uP;
     union {
-        WIN32_FIND_DATAA data;
-        WIN32_FIND_DATAW wdata;
+	WIN32_FIND_DATAA data;
+	WIN32_FIND_DATAW wdata;
     } uD;
 
     ok = false;
     if (__INST(dirPointer) == nil) {
-        path = __INST(pathName);
-        if (__isStringLike(path)) {
-            int l = __stringSize(path);
+	path = __INST(pathName);
+	if (__isStringLike(path)) {
+	    int l = __stringSize(path);
 
-            if (l < (MAXPATHLEN-4)) {
-                strncpy(uP.pattern, __stringVal(path), l);
-                strcpy(uP.pattern+l, "\\*");
+	    if (l < (MAXPATHLEN-4)) {
+		strncpy(uP.pattern, __stringVal(path), l);
+		strcpy(uP.pattern+l, "\\*");
 
-                do {
-                    __threadErrno = 0;
-                    d = STX_API_NOINT_CALL2( "FindFirstFileA", FindFirstFileA, uP.pattern, &uD.data );
-                } while ((d < 0) && (__threadErrno == EINTR));
+		do {
+		    __threadErrno = 0;
+		    d = STX_API_NOINT_CALL2( "FindFirstFileA", FindFirstFileA, uP.pattern, &uD.data );
+		} while ((d < 0) && (__threadErrno == EINTR));
 
-                if (d == INVALID_HANDLE_VALUE) {
-                    error = __mkSmallInteger(GetLastError());
-                } else {
-                    dp = __MKEXTERNALADDRESS(d); __INST(dirPointer) = dp; __STORE(self, dp);
+		if (d == INVALID_HANDLE_VALUE) {
+		    error = __mkSmallInteger(GetLastError());
+		} else {
+		    dp = __MKEXTERNALADDRESS(d); __INST(dirPointer) = dp; __STORE(self, dp);
 
-                    fileSize   = __MKLARGEINT64(1, uD.data.nFileSizeLow, uD.data.nFileSizeHigh );
-                    osPathname = __MKSTRING( uD.data.cFileName );
-                    osFileAttributes = __mkSmallInteger( uD.data.dwFileAttributes );
+		    fileSize   = __MKLARGEINT64(1, uD.data.nFileSizeLow, uD.data.nFileSizeHigh );
+		    osPathname = __MKSTRING( uD.data.cFileName );
+		    osFileAttributes = __mkSmallInteger( uD.data.dwFileAttributes );
 
-                    osCrtTime = FileTimeToOsTime1970(&uD.data.ftCreationTime);
-                    osAccTime = FileTimeToOsTime1970(&uD.data.ftLastAccessTime);
-                    osModTime = FileTimeToOsTime1970(&uD.data.ftLastWriteTime);
-                    ok = true;
-                }
-            }
-        }
-        else if (__isUnicode16String(path)) {
-            int l = __unicode16StringSize(path);
-            int i;
+		    osCrtTime = FileTimeToOsTime1970(&uD.data.ftCreationTime);
+		    osAccTime = FileTimeToOsTime1970(&uD.data.ftLastAccessTime);
+		    osModTime = FileTimeToOsTime1970(&uD.data.ftLastWriteTime);
+		    ok = true;
+		}
+	    }
+	}
+	else if (__isUnicode16String(path)) {
+	    int l = __unicode16StringSize(path);
+	    int i;
 
-            if (l < (MAXPATHLEN-4)) {
-                for (i=0; i<l; i++) {
-                    uP.wpattern[i] = __unicode16StringVal(path)[i];
-                }
-                uP.wpattern[i++] = '\\';
-                uP.wpattern[i++] = '*';
-                uP.wpattern[i] = 0;
+	    if (l < (MAXPATHLEN-4)) {
+		for (i=0; i<l; i++) {
+		    uP.wpattern[i] = __unicode16StringVal(path)[i];
+		}
+		uP.wpattern[i++] = '\\';
+		uP.wpattern[i++] = '*';
+		uP.wpattern[i] = 0;
 
-                do {
-                    __threadErrno = 0;
-                    d = STX_API_NOINT_CALL2( "FindFirstFileW", FindFirstFileW, uP.wpattern, &uD.wdata );
-                } while ((d < 0) && (__threadErrno == EINTR));
+		do {
+		    __threadErrno = 0;
+		    d = STX_API_NOINT_CALL2( "FindFirstFileW", FindFirstFileW, uP.wpattern, &uD.wdata );
+		} while ((d < 0) && (__threadErrno == EINTR));
 
-                if (d == INVALID_HANDLE_VALUE) {
-                    error = __mkSmallInteger(GetLastError());
-                } else {
-                    dp = __MKEXTERNALADDRESS(d); __INST(dirPointer) = dp; __STORE(self, dp);
+		if (d == INVALID_HANDLE_VALUE) {
+		    error = __mkSmallInteger(GetLastError());
+		} else {
+		    dp = __MKEXTERNALADDRESS(d); __INST(dirPointer) = dp; __STORE(self, dp);
 
-                    fileSize   = __MKLARGEINT64(1, uD.wdata.nFileSizeLow, uD.wdata.nFileSizeHigh );
-                    osPathname = __MKU16STRING( uD.wdata.cFileName );
-                    osFileAttributes = __mkSmallInteger( uD.data.dwFileAttributes );
+		    fileSize   = __MKLARGEINT64(1, uD.wdata.nFileSizeLow, uD.wdata.nFileSizeHigh );
+		    osPathname = __MKU16STRING( uD.wdata.cFileName );
+		    osFileAttributes = __mkSmallInteger( uD.data.dwFileAttributes );
 
-                    osCrtTime = FileTimeToOsTime1970(&uD.wdata.ftCreationTime);
-                    osAccTime = FileTimeToOsTime1970(&uD.wdata.ftLastAccessTime);
-                    osModTime = FileTimeToOsTime1970(&uD.wdata.ftLastWriteTime);
-                    ok = true;
-                }
-            }
-        }
+		    osCrtTime = FileTimeToOsTime1970(&uD.wdata.ftCreationTime);
+		    osAccTime = FileTimeToOsTime1970(&uD.wdata.ftLastAccessTime);
+		    osModTime = FileTimeToOsTime1970(&uD.wdata.ftLastWriteTime);
+		    ok = true;
+		}
+	    }
+	}
     }
 #endif
 #endif
 %}.
 
     ok == true ifTrue:[
-        self registerForFinalization.
-        osPathname isNil ifTrue:[
-            "UNIX: does not automatically provide the first entry"
+	self registerForFinalization.
+	osPathname isNil ifTrue:[
+	    "UNIX: does not automatically provide the first entry"
 
-            (StreamError,StreamIOError) handle:[:ex |
-                self close.
-                ex reject.
-            ] do:[
-                readAheadEntry := OperatingSystem nextLinkInfoFrom:self dirPointer:dirPointer.
-            ].
-        ] ifFalse:[
-            "Windows already provides the first entry's info"
+	    (StreamError,StreamIOError) handle:[:ex |
+		self close.
+		ex reject.
+	    ] do:[
+		readAheadEntry := OperatingSystem nextLinkInfoFrom:self dirPointer:dirPointer.
+	    ].
+	] ifFalse:[
+	    "Windows already provides the first entry's info"
 
-            readAheadEntry := OperatingSystem
-                linkInfoFor:osPathname
-                fileSize:fileSize
-                fileAttributes:osFileAttributes
-                osCrtTime:osCrtTime
-                osAccTime:osAccTime
-                osModTime:osModTime
-        ].
+	    readAheadEntry := OperatingSystem
+		linkInfoFor:osPathname
+		fileSize:fileSize
+		fileAttributes:osFileAttributes
+		osCrtTime:osCrtTime
+		osAccTime:osAccTime
+		osModTime:osModTime
+	].
 
-        ^ self
+	^ self
     ].
 
     ok notNil ifTrue:[
-        dirPointer notNil ifTrue:[^ self errorAlreadyOpen].
+	dirPointer notNil ifTrue:[^ self errorAlreadyOpen].
     ].
     error notNil ifTrue:[
-        ^ self openError:(lastErrorNumber := error).
+	^ self openError:(lastErrorNumber := error).
     ].
     ^ nil
 !
@@ -772,4 +772,3 @@
 version_CVS
     ^ '$Header$'
 ! !
-
--- a/ExternalStream.st	Mon Mar 05 15:01:10 2018 +0100
+++ b/ExternalStream.st	Mon Mar 05 15:19:40 2018 +0100
@@ -204,7 +204,7 @@
 # define DEBUGBUFFER(buf)  \
     if (((char *)(buf) >= __survStartPtr) \
      && ((char *)(buf) < __survEndPtr)) { \
-        __fatal0("read into survivor\n"); \
+	__fatal0("read into survivor\n"); \
     }
 
 #else
@@ -225,33 +225,33 @@
 
 #ifdef __win32__
 #  define READ(ret, f, cp, n, handleType) { \
-        if (handleType == @symbol(socketHandle)) { \
-          (ret) = __STX_WSA_NOINT_CALL4("recv", recv, (f), (cp), (n), 0); \
-        } else { \
-          HANDLE h = _get_osfhandle(fileno(f)); \
-          if (handleType == @symbol(socketFilePointer)) { \
-            (ret) = __STX_WSA_NOINT_CALL4("recv", recv, h, (cp), (n), 0);\
-          } else { \
-            int __res; \
-            (ret) = __STX_API_NOINT_CALL5("ReadFile", ReadFile, h, (cp), (n), &__res, 0);\
-            (ret) = (ret) > 0 ? __res : (__threadErrno == __WIN32_ERR(ERROR_BROKEN_PIPE) ? 0 : -1); \
-          } \
-        } \
+	if (handleType == @symbol(socketHandle)) { \
+	  (ret) = __STX_WSA_NOINT_CALL4("recv", recv, (f), (cp), (n), 0); \
+	} else { \
+	  HANDLE h = _get_osfhandle(fileno(f)); \
+	  if (handleType == @symbol(socketFilePointer)) { \
+	    (ret) = __STX_WSA_NOINT_CALL4("recv", recv, h, (cp), (n), 0);\
+	  } else { \
+	    int __res; \
+	    (ret) = __STX_API_NOINT_CALL5("ReadFile", ReadFile, h, (cp), (n), &__res, 0);\
+	    (ret) = (ret) > 0 ? __res : (__threadErrno == __WIN32_ERR(ERROR_BROKEN_PIPE) ? 0 : -1); \
+	  } \
+	} \
       }
 
 #  define WRITE(ret, f, cp, n, handleType) { \
-        if (handleType == @symbol(socketHandle)) { \
-          (ret) = __STX_WSA_NOINT_CALL4("send", send, (f), (cp), (n), 0); \
-        } else {\
-          HANDLE h = _get_osfhandle(fileno(f)); \
-          if (handleType == @symbol(socketFilePointer)) { \
-            (ret) = __STX_WSA_NOINT_CALL4("send", send, h, (cp), (n), 0);\
-          } else {\
-            int __res; \
-            (ret) = __STX_API_NOINT_CALL5("WriteFile", WriteFile, h, (cp), (n), &__res, 0);\
-            (ret) = (ret) ? __res : -1; \
-          } \
-        } \
+	if (handleType == @symbol(socketHandle)) { \
+	  (ret) = __STX_WSA_NOINT_CALL4("send", send, (f), (cp), (n), 0); \
+	} else {\
+	  HANDLE h = _get_osfhandle(fileno(f)); \
+	  if (handleType == @symbol(socketFilePointer)) { \
+	    (ret) = __STX_WSA_NOINT_CALL4("send", send, h, (cp), (n), 0);\
+	  } else {\
+	    int __res; \
+	    (ret) = __STX_API_NOINT_CALL5("WriteFile", WriteFile, h, (cp), (n), &__res, 0);\
+	    (ret) = (ret) ? __res : -1; \
+	  } \
+	} \
       }
 
 # define FFLUSH(fp)             fflush(fp)
@@ -262,56 +262,56 @@
 # define __READING__(f)                          \
     if ((__INST(didWrite) != false)              \
      && (__INST(mode) == @symbol(readwrite))) {  \
-        __INST(didWrite) = false;                \
-        OPT_FSEEK(f, 0L, SEEK_CUR); /* needed in stdio */  \
+	__INST(didWrite) = false;                \
+	OPT_FSEEK(f, 0L, SEEK_CUR); /* needed in stdio */  \
     }
 
 # define __WRITING__(f)                          \
     if ((__INST(didWrite) != true)               \
      && (__INST(mode) == @symbol(readwrite))) {  \
-        __INST(didWrite) = true;                 \
-        OPT_FSEEK(f, 0L, SEEK_CUR); /* needed in stdio */  \
+	__INST(didWrite) = true;                 \
+	OPT_FSEEK(f, 0L, SEEK_CUR); /* needed in stdio */  \
     }
 
 # define __UNGETC__(c, f, isBuffered)                   \
     if (isBuffered) {                                   \
-        ungetc((c), (f));                               \
+	ungetc((c), (f));                               \
     } else {                                            \
       __INST(readAhead) = __mkSmallInteger((c));        \
     }
 
 # define __READBYTE__(ret, f, buf, isBuffered, handleType) \
     if (isBuffered) {                                   \
-        for (;;) {                                      \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) >= 0) {                           \
-                *(buf) = (ret);                         \
-                (ret) = 1;                              \
-            } else if (ferror(f)) {                     \
-                if (__threadErrno == EINTR) {           \
-                    clearerr(f);                        \
-                    continue;                           \
-                }                                       \
-            } else {                                    \
-                (ret) = 0;                              \
-            }                                           \
-            break;                                      \
-        }                                               \
+	for (;;) {                                      \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) >= 0) {                           \
+		*(buf) = (ret);                         \
+		(ret) = 1;                              \
+	    } else if (ferror(f)) {                     \
+		if (__threadErrno == EINTR) {           \
+		    clearerr(f);                        \
+		    continue;                           \
+		}                                       \
+	    } else {                                    \
+		(ret) = 0;                              \
+	    }                                           \
+	    break;                                      \
+	}                                               \
     } else {                                            \
-        OBJ rA = __INST(readAhead);                     \
-        if (rA != nil) {                                \
-            *(buf) = (char)__intVal(rA);                \
-            __INST(readAhead) = nil;                    \
-            (ret) = 1;                                  \
-        } else {                                        \
-            for (;;) {                                  \
-                CLEAR_ERRNO;                            \
-                READ((ret), f, buf, 1, handleType);       \
-                if ((ret) >= 0 || __threadErrno != EINTR) \
-                    break;                              \
-            }                                           \
-        }                                               \
+	OBJ rA = __INST(readAhead);                     \
+	if (rA != nil) {                                \
+	    *(buf) = (char)__intVal(rA);                \
+	    __INST(readAhead) = nil;                    \
+	    (ret) = 1;                                  \
+	} else {                                        \
+	    for (;;) {                                  \
+		CLEAR_ERRNO;                            \
+		READ((ret), f, buf, 1, handleType);       \
+		if ((ret) >= 0 || __threadErrno != EINTR) \
+		    break;                              \
+	    }                                           \
+	}                                               \
     }
 
   /*
@@ -321,122 +321,122 @@
 # define __READBYTES__(ret, f, buf, cnt, isBuffered, handleType)    \
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        int __offs = 0;                                 \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) < 0) {                            \
-                if (ferror(f)) {                        \
-                    if (__threadErrno == EINTR) {       \
-                        clearerr(f);                    \
-                        continue;                       \
-                    }                                   \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-                break;                                  \
-            }                                           \
-            (buf)[__offs++] = (ret);                    \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0;                                 \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) < 0) {                            \
+		if (ferror(f)) {                        \
+		    if (__threadErrno == EINTR) {       \
+			clearerr(f);                    \
+			continue;                       \
+		    }                                   \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    (buf)[__offs++] = (ret);                    \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        int __offs = 0;                                 \
-                                                        \
-        while (__offs < (cnt)) {                        \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                (buf)[__offs] = __intVal(rA);           \
-                __INST(readAhead) = nil;                \
-                (ret) = 1;                              \
-            } else {                                    \
-                CLEAR_ERRNO;                            \
-                READ((ret), f, (buf)+__offs, (cnt)-__offs, handleType); \
-                if ((ret) <= 0) {                       \
-                    if ((ret) < 0 && __threadErrno == EINTR) {  \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                }                                       \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0;                                 \
+							\
+	while (__offs < (cnt)) {                        \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		(buf)[__offs] = __intVal(rA);           \
+		__INST(readAhead) = nil;                \
+		(ret) = 1;                              \
+	    } else {                                    \
+		CLEAR_ERRNO;                            \
+		READ((ret), f, (buf)+__offs, (cnt)-__offs, handleType); \
+		if ((ret) <= 0) {                       \
+		    if ((ret) < 0 && __threadErrno == EINTR) {  \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		}                                       \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
    }
 
 # define __READAVAILBYTES__(ret, f, buf, cnt, isBuffered, handleType) \
   {                                                     \
     int __offs = 0;                                     \
     int oldFlags;                                       \
-                                                        \
+							\
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) < 0) {                            \
-                if (ferror(f)) {                        \
-                    if (__threadErrno == EINTR) {       \
-                        clearerr(f);                    \
-                        continue;                       \
-                    }                                   \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-                break;                                  \
-            }                                           \
-            (buf)[__offs++] = (ret);                    \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) < 0) {                            \
+		if (ferror(f)) {                        \
+		    if (__threadErrno == EINTR) {       \
+			clearerr(f);                    \
+			continue;                       \
+		    }                                   \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    (buf)[__offs++] = (ret);                    \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        while (__offs < (cnt)) {                        \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                (buf)[__offs] = __intVal(rA);           \
-                __INST(readAhead) = nil;                \
-                (ret) = 1;                              \
-                __offs ++;                              \
-                continue;                               \
-            }                                           \
-            CLEAR_ERRNO;                                \
-            {                                           \
-              int res = -1, ok = 0;                     \
-              SOCKET sock = 0;                          \
-              if ((handleType == @symbol(socketFilePointer) && ((ok = ioctlsocket(sock = (SOCKET)_get_osfhandle(fileno(f)),FIONREAD,&res) == 0), 1)) \
-                  || (handleType == @symbol(socketHandle) && ((ok = ioctlsocket(sock = (SOCKET)(f), FIONREAD, &res) == 0), 1)) \
-                  || (handleType == @symbol(pipeFilePointer) && ((ok = PeekNamedPipe((HANDLE)_get_osfhandle(fileno(f)),0, 0,0,&res,0)), 1))) { \
-                   if (!ok) {                                                               \
-                        __threadErrno = sock ? WSAGetLastError() : __WIN32_ERR(GetLastError()); \
-                        (ret) = __threadErrno == __WIN32_ERR(ERROR_BROKEN_PIPE) ? 0 : -1;   \
-                        break;                                                              \
-                   }                                \
-                  if (res > 0) {                        \
-                      if (res > ((cnt)-__offs))         \
-                          res = (cnt)-__offs;           \
-                      READ((ret), f, (buf)+__offs, res, handleType); \
-                  } else {                              \
-                      if (sock && send(sock, NULL, 0, 0) == SOCKET_ERROR) {     \
-                        (ret) = -1; __threadErrno = WSAGetLastError();          \
-                      } else {                          \
-                        (ret) = 0;                      \
-                      }                                 \
-                      break;                            \
-                  }                                     \
-              } else {                                  \
-                  READ((ret), f, (buf)+__offs, (cnt)-__offs, handleType); \
-              }                                         \
-            }                                           \
-            if ((ret) <= 0) {                           \
-                if ((ret) < 0 && __threadErrno == EINTR)\
-                    continue;                           \
-                break;                                  \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		(buf)[__offs] = __intVal(rA);           \
+		__INST(readAhead) = nil;                \
+		(ret) = 1;                              \
+		__offs ++;                              \
+		continue;                               \
+	    }                                           \
+	    CLEAR_ERRNO;                                \
+	    {                                           \
+	      int res = -1, ok = 0;                     \
+	      SOCKET sock = 0;                          \
+	      if ((handleType == @symbol(socketFilePointer) && ((ok = ioctlsocket(sock = (SOCKET)_get_osfhandle(fileno(f)),FIONREAD,&res) == 0), 1)) \
+		  || (handleType == @symbol(socketHandle) && ((ok = ioctlsocket(sock = (SOCKET)(f), FIONREAD, &res) == 0), 1)) \
+		  || (handleType == @symbol(pipeFilePointer) && ((ok = PeekNamedPipe((HANDLE)_get_osfhandle(fileno(f)),0, 0,0,&res,0)), 1))) { \
+		   if (!ok) {                                                               \
+			__threadErrno = sock ? WSAGetLastError() : __WIN32_ERR(GetLastError()); \
+			(ret) = __threadErrno == __WIN32_ERR(ERROR_BROKEN_PIPE) ? 0 : -1;   \
+			break;                                                              \
+		   }                                \
+		  if (res > 0) {                        \
+		      if (res > ((cnt)-__offs))         \
+			  res = (cnt)-__offs;           \
+		      READ((ret), f, (buf)+__offs, res, handleType); \
+		  } else {                              \
+		      if (sock && send(sock, NULL, 0, 0) == SOCKET_ERROR) {     \
+			(ret) = -1; __threadErrno = WSAGetLastError();          \
+		      } else {                          \
+			(ret) = 0;                      \
+		      }                                 \
+		      break;                            \
+		  }                                     \
+	      } else {                                  \
+		  READ((ret), f, (buf)+__offs, (cnt)-__offs, handleType); \
+	      }                                         \
+	    }                                           \
+	    if ((ret) <= 0) {                           \
+		if ((ret) < 0 && __threadErrno == EINTR)\
+		    continue;                           \
+		break;                                  \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
   }
 
@@ -447,63 +447,63 @@
     int __ooffs = obj_offs;                             \
     int __offs = 0;                                     \
     char *buf = (char *)(obj);                          \
-                                                        \
+							\
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) < 0) {                            \
-                if (ferror(f)) {                        \
-                    if (__threadErrno == EINTR) {       \
-                        clearerr(f);                    \
-                        /* refetch */                   \
-                        buf = (char *)(obj);            \
-                        continue;                       \
-                    }                                   \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-                break;                                  \
-            }                                           \
-            (buf)[__ooffs+__offs] = (ret);              \
-            __offs++;                                   \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) < 0) {                            \
+		if (ferror(f)) {                        \
+		    if (__threadErrno == EINTR) {       \
+			clearerr(f);                    \
+			/* refetch */                   \
+			buf = (char *)(obj);            \
+			continue;                       \
+		    }                                   \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    (buf)[__ooffs+__offs] = (ret);              \
+	    __offs++;                                   \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        while (__offs < (cnt)) {                        \
-            char __buf[IO_BUFFER_SIZE];                 \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                (buf)[__ooffs+__offs] = __intVal(rA);   \
-                __INST(readAhead) = nil;                \
-                (ret) = 1;                              \
-            } else {                                    \
-                int l;                                  \
-                CLEAR_ERRNO;                            \
-                l = (cnt)-__offs;                       \
-                if ( l > IO_BUFFER_SIZE)                \
-                  l = IO_BUFFER_SIZE;                   \
-                READ((ret),f, __buf, l, handleType);    \
-                if ((ret) <= 0) {                       \
-                    if ((ret) < 0 && __threadErrno == EINTR) {  \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                }                                       \
-            }                                           \
-            if ((ret) > 0 ) {                           \
-                /* refetch */                               \
-                buf = (char *)(obj);                        \
-                memcpy((buf)+__ooffs+__offs,__buf,(ret));   \
-                __offs += (ret);                            \
-            } else {                                        \
-                (ret) = 0;                                  \
-            }                                               \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    char __buf[IO_BUFFER_SIZE];                 \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		(buf)[__ooffs+__offs] = __intVal(rA);   \
+		__INST(readAhead) = nil;                \
+		(ret) = 1;                              \
+	    } else {                                    \
+		int l;                                  \
+		CLEAR_ERRNO;                            \
+		l = (cnt)-__offs;                       \
+		if ( l > IO_BUFFER_SIZE)                \
+		  l = IO_BUFFER_SIZE;                   \
+		READ((ret),f, __buf, l, handleType);    \
+		if ((ret) <= 0) {                       \
+		    if ((ret) < 0 && __threadErrno == EINTR) {  \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		}                                       \
+	    }                                           \
+	    if ((ret) > 0 ) {                           \
+		/* refetch */                               \
+		buf = (char *)(obj);                        \
+		memcpy((buf)+__ooffs+__offs,__buf,(ret));   \
+		__offs += (ret);                            \
+	    } else {                                        \
+		(ret) = 0;                                  \
+	    }                                               \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
   }
 
@@ -512,150 +512,150 @@
     int __ooffs = obj_offs;                          \
     int __offs = 0;                                  \
     char *buf = (char *)(obj);                       \
-                                                     \
+						     \
     (ret) = 0;                                       \
     if (isBuffered) {                                \
-        while (__offs < (cnt)) {                     \
-            CLEAR_ERRNO;                             \
-            (ret) = getc(f);                         \
-            if ((ret) < 0) {                         \
-                if (ferror(f)) {                     \
-                    if (__threadErrno == EINTR) {    \
-                        clearerr(f);                 \
-                        /* refetch */                \
-                        buf = (char *)(obj);         \
-                        continue;                    \
-                    }                                \
-                } else {                             \
-                    (ret) = 0;                       \
-                }                                    \
-                break;                               \
-            }                                        \
-            (buf)[__ooffs+__offs] = (ret);           \
-            __offs++;                                \
-        }                                            \
-        if (__offs > 0)                              \
-            (ret) = __offs;                          \
+	while (__offs < (cnt)) {                     \
+	    CLEAR_ERRNO;                             \
+	    (ret) = getc(f);                         \
+	    if ((ret) < 0) {                         \
+		if (ferror(f)) {                     \
+		    if (__threadErrno == EINTR) {    \
+			clearerr(f);                 \
+			/* refetch */                \
+			buf = (char *)(obj);         \
+			continue;                    \
+		    }                                \
+		} else {                             \
+		    (ret) = 0;                       \
+		}                                    \
+		break;                               \
+	    }                                        \
+	    (buf)[__ooffs+__offs] = (ret);           \
+	    __offs++;                                \
+	}                                            \
+	if (__offs > 0)                              \
+	    (ret) = __offs;                          \
     } else {                                         \
-        while (__offs < (cnt)) {                     \
-            char __buf[IO_BUFFER_SIZE];              \
-            OBJ rA = __INST(readAhead);              \
-            if (rA != nil) {                         \
-                (buf)[__ooffs+__offs] = __intVal(rA);\
-                __INST(readAhead) = nil;             \
-                (ret) = 1;                           \
-                __offs++;                            \
-                continue;                            \
-            }                                        \
-            {                                        \
-                int res = -1, ok = 0;                \
-                SOCKET sock = 0;                     \
-                int l = (cnt)-__offs;                \
-                CLEAR_ERRNO;                         \
-                if (l > IO_BUFFER_SIZE) l = IO_BUFFER_SIZE;              \
-                if ((handleType == @symbol(socketFilePointer) && ((ok = ioctlsocket(sock = (SOCKET)_get_osfhandle(fileno(f)),FIONREAD,&res) == 0), 1)) \
-                    || (handleType == @symbol(socketHandle) && ((ok = ioctlsocket(sock = (SOCKET)(f), FIONREAD, &res) == 0), 1)) \
-                    || (handleType == @symbol(pipeFilePointer) && ((ok = PeekNamedPipe((HANDLE)_get_osfhandle(fileno(f)),0, 0,0,&res,0)), 1))) { \
-                   if (!ok) {                                                               \
-                        __threadErrno = sock ? WSAGetLastError() : __WIN32_ERR(GetLastError()); \
-                        (ret) = __threadErrno == __WIN32_ERR(ERROR_BROKEN_PIPE) ? 0 : -1;   \
-                        break;                                                              \
-                   }                                \
-                   if (res > 0) {                   \
-                        if (res > l) res = l;       \
-                        READ((ret), f, __buf, res, handleType); \
-                   } else {                              \
-                       if (sock && send(sock, NULL, 0, 0) == SOCKET_ERROR) {     \
-                         (ret) = -1; __threadErrno = WSAGetLastError();          \
-                       } else {                          \
-                         (ret) = 0;                      \
-                       }                                 \
-                       break;                            \
-                   }                                     \
-                } else {                                  \
-                    READ((ret), f, __buf, l, handleType); \
-                }                                     \
-                if ((ret) <= 0) {                     \
-                    if ((ret) < 0 && __threadErrno == EINTR) \
-                        continue;                       \
-                    break;                              \
-                }                                       \
-            }                                           \
-            if ((ret) > 0) {                            \
-                buf = (char *)(obj);                    \
-                memcpy((buf)+__ooffs+__offs, __buf, (ret)); \
-                __offs += (ret);                        \
-            } else {                                    \
-                (ret) = 0;                              \
-            }                                           \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                     \
+	    char __buf[IO_BUFFER_SIZE];              \
+	    OBJ rA = __INST(readAhead);              \
+	    if (rA != nil) {                         \
+		(buf)[__ooffs+__offs] = __intVal(rA);\
+		__INST(readAhead) = nil;             \
+		(ret) = 1;                           \
+		__offs++;                            \
+		continue;                            \
+	    }                                        \
+	    {                                        \
+		int res = -1, ok = 0;                \
+		SOCKET sock = 0;                     \
+		int l = (cnt)-__offs;                \
+		CLEAR_ERRNO;                         \
+		if (l > IO_BUFFER_SIZE) l = IO_BUFFER_SIZE;              \
+		if ((handleType == @symbol(socketFilePointer) && ((ok = ioctlsocket(sock = (SOCKET)_get_osfhandle(fileno(f)),FIONREAD,&res) == 0), 1)) \
+		    || (handleType == @symbol(socketHandle) && ((ok = ioctlsocket(sock = (SOCKET)(f), FIONREAD, &res) == 0), 1)) \
+		    || (handleType == @symbol(pipeFilePointer) && ((ok = PeekNamedPipe((HANDLE)_get_osfhandle(fileno(f)),0, 0,0,&res,0)), 1))) { \
+		   if (!ok) {                                                               \
+			__threadErrno = sock ? WSAGetLastError() : __WIN32_ERR(GetLastError()); \
+			(ret) = __threadErrno == __WIN32_ERR(ERROR_BROKEN_PIPE) ? 0 : -1;   \
+			break;                                                              \
+		   }                                \
+		   if (res > 0) {                   \
+			if (res > l) res = l;       \
+			READ((ret), f, __buf, res, handleType); \
+		   } else {                              \
+		       if (sock && send(sock, NULL, 0, 0) == SOCKET_ERROR) {     \
+			 (ret) = -1; __threadErrno = WSAGetLastError();          \
+		       } else {                          \
+			 (ret) = 0;                      \
+		       }                                 \
+		       break;                            \
+		   }                                     \
+		} else {                                  \
+		    READ((ret), f, __buf, l, handleType); \
+		}                                     \
+		if ((ret) <= 0) {                     \
+		    if ((ret) < 0 && __threadErrno == EINTR) \
+			continue;                       \
+		    break;                              \
+		}                                       \
+	    }                                           \
+	    if ((ret) > 0) {                            \
+		buf = (char *)(obj);                    \
+		memcpy((buf)+__ooffs+__offs, __buf, (ret)); \
+		__offs += (ret);                        \
+	    } else {                                    \
+		(ret) = 0;                              \
+	    }                                           \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
   }
 
 # define __WRITEBYTE__(ret, f, buf, isBuffered, handleType)         \
     if (isBuffered) {                                   \
-        for (;;) {                                      \
-            CLEAR_ERRNO;                                \
-            ret = putc(*(buf), f);                      \
-            if ((ret) >= 0) {                           \
-                (ret) = 1;                              \
-            } else if (ferror(f)) {                     \
-                if (__threadErrno == EINTR) {           \
-                    clearerr(f);                        \
-                    continue;                           \
-                }                                       \
-            } else                                      \
-                (ret) = 0;                              \
-            break;                                      \
-        }                                               \
+	for (;;) {                                      \
+	    CLEAR_ERRNO;                                \
+	    ret = putc(*(buf), f);                      \
+	    if ((ret) >= 0) {                           \
+		(ret) = 1;                              \
+	    } else if (ferror(f)) {                     \
+		if (__threadErrno == EINTR) {           \
+		    clearerr(f);                        \
+		    continue;                           \
+		}                                       \
+	    } else                                      \
+		(ret) = 0;                              \
+	    break;                                      \
+	}                                               \
     } else {                                            \
-        for (;;) {                                      \
-            CLEAR_ERRNO;                                \
-            WRITE(ret,f, buf, 1, handleType);           \
-            if ((ret) >= 0 || __threadErrno != EINTR)   \
-                break;                                  \
-        }                                               \
+	for (;;) {                                      \
+	    CLEAR_ERRNO;                                \
+	    WRITE(ret,f, buf, 1, handleType);           \
+	    if ((ret) >= 0 || __threadErrno != EINTR)   \
+		break;                                  \
+	}                                               \
    }
 
 # define __WRITEBYTES__(ret, f, buf, cnt, isBuffered, handleType)   \
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        int __offs = 0;                                 \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = fwrite((buf)+__offs, 1, (cnt)-__offs, f);\
-            if ((ret) <= 0) {                           \
-                if (ferror(f)) {                        \
-                    if (__threadErrno == EINTR) {       \
-                        clearerr(f);                    \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0;                                 \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = fwrite((buf)+__offs, 1, (cnt)-__offs, f);\
+	    if ((ret) <= 0) {                           \
+		if (ferror(f)) {                        \
+		    if (__threadErrno == EINTR) {       \
+			clearerr(f);                    \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        int __offs = 0;                                 \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            WRITE((ret),f, (buf)+__offs, (cnt)-__offs, handleType);   \
-            if ((ret) <= 0) {                           \
-                if ((ret) < 0 && __threadErrno == EINTR) { \
-                    continue;                           \
-                }                                       \
-                break;                                  \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0;                                 \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    WRITE((ret),f, (buf)+__offs, (cnt)-__offs, handleType);   \
+	    if ((ret) <= 0) {                           \
+		if ((ret) < 0 && __threadErrno == EINTR) { \
+		    continue;                           \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
    }
 
 # define __WRITEBYTES_OBJ__(ret, f, obj, obj_offs, cnt, isBuffered, handleType) \
@@ -663,51 +663,51 @@
     int __ooffs = obj_offs;                             \
     int __offs = 0;                                     \
     char *buf = (char *)(obj);                          \
-                                                        \
+							\
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            ret = fwrite((buf)+__ooffs+__offs, 1, (cnt)-__offs, f); \
-            if ((ret) <= 0) {                           \
-                if (ferror(f)) {                        \
-                    if (__threadErrno == EINTR) {       \
-                        /* refetch */                   \
-                        buf = (char *)(obj);            \
-                        clearerr(f);                    \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    ret = fwrite((buf)+__ooffs+__offs, 1, (cnt)-__offs, f); \
+	    if ((ret) <= 0) {                           \
+		if (ferror(f)) {                        \
+		    if (__threadErrno == EINTR) {       \
+			/* refetch */                   \
+			buf = (char *)(obj);            \
+			clearerr(f);                    \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        while (__offs < (cnt)) {                        \
-            char __buf[IO_BUFFER_SIZE];                 \
-            int l;                                      \
-            CLEAR_ERRNO;                                \
-            l = (cnt)-__offs;                           \
-            if ( l > IO_BUFFER_SIZE)                    \
-              l = IO_BUFFER_SIZE;                       \
-            /* refetch */                               \
-            buf = (char *)(obj);                        \
-            memcpy(__buf,(buf)+__ooffs+__offs,l);       \
-            WRITE(ret,f, __buf, l, handleType);         \
-            if ((ret) <= 0) {                           \
-                if ((ret) < 0 && __threadErrno == EINTR) { \
-                    continue;                           \
-                }                                       \
-                break;                                  \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    char __buf[IO_BUFFER_SIZE];                 \
+	    int l;                                      \
+	    CLEAR_ERRNO;                                \
+	    l = (cnt)-__offs;                           \
+	    if ( l > IO_BUFFER_SIZE)                    \
+	      l = IO_BUFFER_SIZE;                       \
+	    /* refetch */                               \
+	    buf = (char *)(obj);                        \
+	    memcpy(__buf,(buf)+__ooffs+__offs,l);       \
+	    WRITE(ret,f, __buf, l, handleType);         \
+	    if ((ret) <= 0) {                           \
+		if ((ret) < 0 && __threadErrno == EINTR) { \
+		    continue;                           \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
   }
 
@@ -718,15 +718,15 @@
 # define __READING__(f)                          \
     if ((__INST(didWrite) != false)              \
      && (__INST(mode) == @symbol(readwrite))) {  \
-        __INST(didWrite) = false;                \
-        OPT_FSEEK(f, 0L, SEEK_CUR); /* needed in stdio */  \
+	__INST(didWrite) = false;                \
+	OPT_FSEEK(f, 0L, SEEK_CUR); /* needed in stdio */  \
     }
 
 # define __WRITING__(f)                          \
     if ((__INST(didWrite) != true)               \
      && (__INST(mode) == @symbol(readwrite))) {  \
-        __INST(didWrite) = true;                 \
-        OPT_FSEEK(f, 0L, SEEK_CUR); /* needed in stdio */  \
+	__INST(didWrite) = true;                 \
+	OPT_FSEEK(f, 0L, SEEK_CUR); /* needed in stdio */  \
     }
 
 
@@ -736,73 +736,73 @@
 # else /* use STDIO */
 #  define __UNGETC__(c, f, isBuffered)                  \
     if (isBuffered) {                                   \
-        ungetc((c), (f));                               \
+	ungetc((c), (f));                               \
     } else {                                            \
-        __INST(readAhead) = __mkSmallInteger((c));          \
+	__INST(readAhead) = __mkSmallInteger((c));          \
     }
 # endif /* use STDIO */
 
 # ifdef NO_STDIO
 #  define __READBYTE__(ret, f, buf, isBuffered, handleType)         \
     {                                                   \
-        OBJ rA = __INST(readAhead);                     \
-        if (rA != nil) {                                \
-            *(buf) = __intVal(rA);                      \
-            DEBUGBUFFER(buf);                           \
-            __INST(readAhead) = nil;                    \
-            (ret) = 1;                                  \
-        } else {                                        \
-            for (;;) {                                  \
-                CLEAR_ERRNO;                            \
-                (ret) = READ(f, buf, 1, handleType);    \
-                DEBUGBUFFER(buf);                       \
-                if ((ret) >= 0) break;                  \
-                if (errno != EINTR) {                   \
-                    break;                              \
-                }                                       \
-                __HANDLE_INTERRUPTS__;                  \
-            }                                           \
-        }                                               \
+	OBJ rA = __INST(readAhead);                     \
+	if (rA != nil) {                                \
+	    *(buf) = __intVal(rA);                      \
+	    DEBUGBUFFER(buf);                           \
+	    __INST(readAhead) = nil;                    \
+	    (ret) = 1;                                  \
+	} else {                                        \
+	    for (;;) {                                  \
+		CLEAR_ERRNO;                            \
+		(ret) = READ(f, buf, 1, handleType);    \
+		DEBUGBUFFER(buf);                       \
+		if ((ret) >= 0) break;                  \
+		if (errno != EINTR) {                   \
+		    break;                              \
+		}                                       \
+		__HANDLE_INTERRUPTS__;                  \
+	    }                                           \
+	}                                               \
     }
 # else /* use STDIO */
 #  define __READBYTE__(ret, f, buf, isBuffered, handleType)         \
     if (isBuffered) {                                   \
-        for (;;) {                                      \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) >= 0) {                           \
-                DEBUGBUFFER(buf);                       \
-                *(buf) = (ret);                         \
-                (ret) = 1;                              \
-            } else if (ferror(f)) {                     \
-                if (errno == EINTR) {                   \
-                    __HANDLE_INTERRUPTS__;              \
-                    clearerr(f);                        \
-                    continue;                           \
-                }                                       \
-            } else                                      \
-                (ret) = 0;                              \
-            break;                                      \
-        }                                               \
+	for (;;) {                                      \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) >= 0) {                           \
+		DEBUGBUFFER(buf);                       \
+		*(buf) = (ret);                         \
+		(ret) = 1;                              \
+	    } else if (ferror(f)) {                     \
+		if (errno == EINTR) {                   \
+		    __HANDLE_INTERRUPTS__;              \
+		    clearerr(f);                        \
+		    continue;                           \
+		}                                       \
+	    } else                                      \
+		(ret) = 0;                              \
+	    break;                                      \
+	}                                               \
     } else {                                            \
-        OBJ rA = __INST(readAhead);                     \
-        if (rA != nil) {                                \
-            *(buf) = __intVal(rA);                      \
-            DEBUGBUFFER(buf);                           \
-            __INST(readAhead) = nil;                    \
-            (ret) = 1;                                  \
-        } else {                                        \
-            for (;;) {                                  \
-                CLEAR_ERRNO;                            \
-                (ret) = read(fileno(f), buf, 1);        \
-                DEBUGBUFFER(buf);                       \
-                if ((ret) >= 0) break;                  \
-                if (errno != EINTR) {                   \
-                    break;                              \
-                }                                       \
-                __HANDLE_INTERRUPTS__;                  \
-            }                                           \
-        }                                               \
+	OBJ rA = __INST(readAhead);                     \
+	if (rA != nil) {                                \
+	    *(buf) = __intVal(rA);                      \
+	    DEBUGBUFFER(buf);                           \
+	    __INST(readAhead) = nil;                    \
+	    (ret) = 1;                                  \
+	} else {                                        \
+	    for (;;) {                                  \
+		CLEAR_ERRNO;                            \
+		(ret) = read(fileno(f), buf, 1);        \
+		DEBUGBUFFER(buf);                       \
+		if ((ret) >= 0) break;                  \
+		if (errno != EINTR) {                   \
+		    break;                              \
+		}                                       \
+		__HANDLE_INTERRUPTS__;                  \
+	    }                                           \
+	}                                               \
    }
 # endif /* use STDIO */
 
@@ -813,84 +813,84 @@
 # ifdef NO_STDIO
 #  define __READBYTES__(ret, f, buf, cnt, isBuffered, handleType)   \
     {                                                   \
-        int __offs = 0, __cnt;                          \
-                                                        \
-        while (__offs < (cnt)) {                        \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                (buf)[__offs] = __intVal(rA);           \
-                DEBUGBUFFER(buf);                       \
-                __INST(readAhead) = nil;                \
-                __offs++;                               \
-            } else {                                    \
-                CLEAR_ERRNO;                            \
-                __cnt = READ(f, (buf)+__offs, (cnt)-__offs, handleType); \
-                DEBUGBUFFER(buf);                       \
-                if (__cnt <= 0) {                       \
-                    if (__cnt < 0 && errno == EINTR) {  \
-                        __HANDLE_INTERRUPTS__;          \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                }                                       \
-                __offs += __cnt;                        \
-            }                                           \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0, __cnt;                          \
+							\
+	while (__offs < (cnt)) {                        \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		(buf)[__offs] = __intVal(rA);           \
+		DEBUGBUFFER(buf);                       \
+		__INST(readAhead) = nil;                \
+		__offs++;                               \
+	    } else {                                    \
+		CLEAR_ERRNO;                            \
+		__cnt = READ(f, (buf)+__offs, (cnt)-__offs, handleType); \
+		DEBUGBUFFER(buf);                       \
+		if (__cnt <= 0) {                       \
+		    if (__cnt < 0 && errno == EINTR) {  \
+			__HANDLE_INTERRUPTS__;          \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		}                                       \
+		__offs += __cnt;                        \
+	    }                                           \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
    }
 # else /* use STDIO */
 #  define __READBYTES__(ret, f, buf, cnt, isBuffered, handleType)     \
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        int __offs = 0;                                 \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) < 0) {                            \
-                if (ferror(f)) {                        \
-                    if (errno == EINTR) {               \
-                        __HANDLE_INTERRUPTS__;          \
-                        clearerr(f);                    \
-                        continue;                       \
-                    }                                   \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-                break;                                  \
-            }                                           \
-            DEBUGBUFFER(buf);                           \
-            (buf)[__offs++] = (ret);                    \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0;                                 \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) < 0) {                            \
+		if (ferror(f)) {                        \
+		    if (errno == EINTR) {               \
+			__HANDLE_INTERRUPTS__;          \
+			clearerr(f);                    \
+			continue;                       \
+		    }                                   \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    DEBUGBUFFER(buf);                           \
+	    (buf)[__offs++] = (ret);                    \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        int __offs = 0, __cnt;                          \
-        int fd = fileno(f);                             \
-                                                        \
-        while (__offs < (cnt)) {                        \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                DEBUGBUFFER(buf);                       \
-                (buf)[__offs] = __intVal(rA);           \
-                __INST(readAhead) = nil;                \
-                __offs++;                               \
-            } else {                                    \
-                CLEAR_ERRNO;                            \
-                __cnt = read(fd, (buf)+__offs, (cnt)-__offs);  \
-                DEBUGBUFFER(buf);                       \
-                if (__cnt <= 0) {                       \
-                    if (__cnt < 0 && errno == EINTR) {  \
-                        __HANDLE_INTERRUPTS__;          \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                }                                       \
-                __offs += __cnt;                        \
-            }                                           \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0, __cnt;                          \
+	int fd = fileno(f);                             \
+							\
+	while (__offs < (cnt)) {                        \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		DEBUGBUFFER(buf);                       \
+		(buf)[__offs] = __intVal(rA);           \
+		__INST(readAhead) = nil;                \
+		__offs++;                               \
+	    } else {                                    \
+		CLEAR_ERRNO;                            \
+		__cnt = read(fd, (buf)+__offs, (cnt)-__offs);  \
+		DEBUGBUFFER(buf);                       \
+		if (__cnt <= 0) {                       \
+		    if (__cnt < 0 && errno == EINTR) {  \
+			__HANDLE_INTERRUPTS__;          \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		}                                       \
+		__offs += __cnt;                        \
+	    }                                           \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
    }
 
 
@@ -900,7 +900,7 @@
 
 #  if defined(F_GETFL) && defined(F_SETFL) && (defined(O_NONBLOCK) || defined(O_NDELAY) || defined(FNDELAY))
 #   define SETFLAGS(fd, flags) \
-        fcntl(fd, F_SETFL, flags)
+	fcntl(fd, F_SETFL, flags)
 
 #   if defined(O_NONBLOCK)
 #    define __STX_NONBLOCK_FLAG O_NONBLOCK
@@ -913,13 +913,13 @@
 #   endif
 
 #   define SETNONBLOCKING(fd, oldFlags) \
-        { \
-            int flags = fcntl(fd, F_GETFL, 0); \
-            if (flags >= 0) { \
-                fcntl(fd, F_SETFL, flags | __STX_NONBLOCK_FLAG); \
-            } \
-            oldFlags = flags; \
-        }
+	{ \
+	    int flags = fcntl(fd, F_GETFL, 0); \
+	    if (flags >= 0) { \
+		fcntl(fd, F_SETFL, flags | __STX_NONBLOCK_FLAG); \
+	    } \
+	    oldFlags = flags; \
+	}
 #  else
 #   define SETFLAGS(fd, flags) /* nothing */
 #   define SETNONBLOCKING(fd, oldFlags) /* nothing */
@@ -929,52 +929,52 @@
   {                                                     \
     int __offs = 0, __cnt;                              \
     int oldFlags;                                       \
-                                                        \
+							\
     (ret) = 0;                                          \
     SETNONBLOCKING(fileno(f), oldFlags);                \
     if (isBuffered) {                                   \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) < 0) {                            \
-                if (ferror(f)) {                        \
-                    if (errno == EINTR) {               \
-                        (ret) = 0;                      \
-                        clearerr(f);                    \
-                        break;                          \
-                    }                                   \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-                break;                                  \
-            }                                           \
-            (buf)[__offs++] = (ret);                    \
-            DEBUGBUFFER(buf);                           \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) < 0) {                            \
+		if (ferror(f)) {                        \
+		    if (errno == EINTR) {               \
+			(ret) = 0;                      \
+			clearerr(f);                    \
+			break;                          \
+		    }                                   \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    (buf)[__offs++] = (ret);                    \
+	    DEBUGBUFFER(buf);                           \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        int fd = fileno(f);                             \
-                                                        \
-        while (__offs < (cnt)) {                        \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                (buf)[__offs] = __intVal(rA);           \
-                DEBUGBUFFER(buf);                       \
-                __INST(readAhead) = nil;                \
-                __offs++;                               \
-                continue;                               \
-            }                                           \
-            CLEAR_ERRNO;                                \
-            __cnt = read(fd, (buf)+__offs, (cnt)-__offs); \
-            DEBUGBUFFER(buf);                           \
-            if (__cnt > 0) {                            \
-                __offs += __cnt;                        \
-            }                                           \
-            break;                                      \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int fd = fileno(f);                             \
+							\
+	while (__offs < (cnt)) {                        \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		(buf)[__offs] = __intVal(rA);           \
+		DEBUGBUFFER(buf);                       \
+		__INST(readAhead) = nil;                \
+		__offs++;                               \
+		continue;                               \
+	    }                                           \
+	    CLEAR_ERRNO;                                \
+	    __cnt = read(fd, (buf)+__offs, (cnt)-__offs); \
+	    DEBUGBUFFER(buf);                           \
+	    if (__cnt > 0) {                            \
+		__offs += __cnt;                        \
+	    }                                           \
+	    break;                                      \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
     SETFLAGS(fileno(f), oldFlags);                      \
   }
@@ -992,34 +992,34 @@
     int __offs = 0;                                     \
     int __cnt;                                          \
     char *buf = (char *)(obj);                          \
-                                                        \
+							\
     (ret) = 0;                                          \
     {                                                   \
-        while (__offs < (cnt)) {                        \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                (buf)[__ooffs+__offs] = __intVal(rA);   \
-                DEBUGBUFFER(buf);                       \
-                __INST(readAhead) = nil;                \
-                __offs++;                               \
-            } else {                                    \
-                CLEAR_ERRNO;                            \
-                __cnt = READ(f, (buf)+__ooffs+__offs, (cnt)-__offs, handleType); \
-                DEBUGBUFFER(buf);                       \
-                if (__cnt <= 0) {                       \
-                    if (__cnt < 0 && errno == EINTR) {  \
-                        __HANDLE_INTERRUPTS__;          \
-                        /* refetch */                   \
-                        buf = (char *)(obj);            \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                }                                       \
-                __offs += __cnt;                        \
-            }                                           \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		(buf)[__ooffs+__offs] = __intVal(rA);   \
+		DEBUGBUFFER(buf);                       \
+		__INST(readAhead) = nil;                \
+		__offs++;                               \
+	    } else {                                    \
+		CLEAR_ERRNO;                            \
+		__cnt = READ(f, (buf)+__ooffs+__offs, (cnt)-__offs, handleType); \
+		DEBUGBUFFER(buf);                       \
+		if (__cnt <= 0) {                       \
+		    if (__cnt < 0 && errno == EINTR) {  \
+			__HANDLE_INTERRUPTS__;          \
+			/* refetch */                   \
+			buf = (char *)(obj);            \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		}                                       \
+		__offs += __cnt;                        \
+	    }                                           \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
   }
 
@@ -1031,61 +1031,61 @@
     int __offs = 0;                                     \
     int __cnt;                                          \
     char *buf = (char *)(obj);                          \
-                                                        \
+							\
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) < 0) {                            \
-                if (ferror(f)) {                        \
-                    if (errno == EINTR) {               \
-                        __HANDLE_INTERRUPTS__;          \
-                        clearerr(f);                    \
-                        /* refetch */                   \
-                        buf = (char *)(obj);            \
-                        DEBUGBUFFER(buf);               \
-                        continue;                       \
-                    }                                   \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-                break;                                  \
-            }                                           \
-            (buf)[__ooffs+__offs] = (ret);              \
-            DEBUGBUFFER(buf);                           \
-            __offs++;                                   \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) < 0) {                            \
+		if (ferror(f)) {                        \
+		    if (errno == EINTR) {               \
+			__HANDLE_INTERRUPTS__;          \
+			clearerr(f);                    \
+			/* refetch */                   \
+			buf = (char *)(obj);            \
+			DEBUGBUFFER(buf);               \
+			continue;                       \
+		    }                                   \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    (buf)[__ooffs+__offs] = (ret);              \
+	    DEBUGBUFFER(buf);                           \
+	    __offs++;                                   \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        int fd = fileno(f);                             \
-                                                        \
-        while (__offs < (cnt)) {                        \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                (buf)[__ooffs+__offs] = __intVal(rA);   \
-                DEBUGBUFFER(buf);                       \
-                __INST(readAhead) = nil;                \
-                __offs++;                               \
-            } else {                                    \
-                CLEAR_ERRNO;                            \
-                __cnt = read(fd, (buf)+__ooffs+__offs, (cnt)-__offs); \
-                DEBUGBUFFER(buf);                       \
-                if (__cnt <= 0) {                       \
-                    if (__cnt < 0 && errno == EINTR) {  \
-                        __HANDLE_INTERRUPTS__;          \
-                        /* refetch */                   \
-                        buf = (char *)(obj);            \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                }                                       \
-                __offs += __cnt;                        \
-            }                                           \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int fd = fileno(f);                             \
+							\
+	while (__offs < (cnt)) {                        \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		(buf)[__ooffs+__offs] = __intVal(rA);   \
+		DEBUGBUFFER(buf);                       \
+		__INST(readAhead) = nil;                \
+		__offs++;                               \
+	    } else {                                    \
+		CLEAR_ERRNO;                            \
+		__cnt = read(fd, (buf)+__ooffs+__offs, (cnt)-__offs); \
+		DEBUGBUFFER(buf);                       \
+		if (__cnt <= 0) {                       \
+		    if (__cnt < 0 && errno == EINTR) {  \
+			__HANDLE_INTERRUPTS__;          \
+			/* refetch */                   \
+			buf = (char *)(obj);            \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		}                                       \
+		__offs += __cnt;                        \
+	    }                                           \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
   }
 
@@ -1096,56 +1096,56 @@
     int __cnt;                                          \
     char *buf = (char *)(obj);                          \
     int oldFlags;                                       \
-                                                        \
+							\
     (ret) = 0;                                          \
     SETNONBLOCKING(fileno(f), oldFlags);                \
-                                                        \
+							\
     if (isBuffered) {                                   \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = getc(f);                            \
-            if ((ret) < 0) {                            \
-                if (ferror(f)) {                        \
-                    if (errno == EINTR) {               \
-                        clearerr(f);                    \
-                        /* refetch */                   \
-                        buf = (char *)(obj);            \
-                        (ret) = 0;                      \
-                        break;                          \
-                    }                                   \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-                break;                                  \
-            }                                           \
-            (buf)[__ooffs+__offs] = (ret);              \
-            DEBUGBUFFER(buf);                           \
-            __offs++;                                   \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = getc(f);                            \
+	    if ((ret) < 0) {                            \
+		if (ferror(f)) {                        \
+		    if (errno == EINTR) {               \
+			clearerr(f);                    \
+			/* refetch */                   \
+			buf = (char *)(obj);            \
+			(ret) = 0;                      \
+			break;                          \
+		    }                                   \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    (buf)[__ooffs+__offs] = (ret);              \
+	    DEBUGBUFFER(buf);                           \
+	    __offs++;                                   \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        int fd = fileno(f);                             \
-                                                        \
-        while (__offs < (cnt)) {                        \
-            OBJ rA = __INST(readAhead);                 \
-            if (rA != nil) {                            \
-                (buf)[__ooffs+__offs] = __intVal(rA);   \
-                DEBUGBUFFER(buf);                       \
-                __INST(readAhead) = nil;                \
-                __offs++;                               \
-                continue;                               \
-            }                                           \
-            CLEAR_ERRNO;                                \
-            __cnt = read(fd, (buf)+__ooffs+__offs, (cnt)-__offs); \
-            DEBUGBUFFER(buf);                           \
-            if (__cnt > 0) {                            \
-                __offs += __cnt;                        \
-            }                                           \
-            break;                                      \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int fd = fileno(f);                             \
+							\
+	while (__offs < (cnt)) {                        \
+	    OBJ rA = __INST(readAhead);                 \
+	    if (rA != nil) {                            \
+		(buf)[__ooffs+__offs] = __intVal(rA);   \
+		DEBUGBUFFER(buf);                       \
+		__INST(readAhead) = nil;                \
+		__offs++;                               \
+		continue;                               \
+	    }                                           \
+	    CLEAR_ERRNO;                                \
+	    __cnt = read(fd, (buf)+__ooffs+__offs, (cnt)-__offs); \
+	    DEBUGBUFFER(buf);                           \
+	    if (__cnt > 0) {                            \
+		__offs += __cnt;                        \
+	    }                                           \
+	    break;                                      \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
     SETFLAGS(fileno(f), oldFlags);                      \
   }
@@ -1155,44 +1155,44 @@
 
 # ifdef NO_STDIO
 #  define __WRITEBYTE__(ret, f, buf, isBuffered, handleType)          \
-        for (;;) {                                      \
-            CLEAR_ERRNO;                                \
-            (ret) = WRITE(f, buf, 1, handleType);       \
-            if ((ret) >= 0) break;                      \
-            if (errno != EINTR) {                       \
-                break;                                  \
-            }                                           \
-            __HANDLE_INTERRUPTS__;                      \
-        }
+	for (;;) {                                      \
+	    CLEAR_ERRNO;                                \
+	    (ret) = WRITE(f, buf, 1, handleType);       \
+	    if ((ret) >= 0) break;                      \
+	    if (errno != EINTR) {                       \
+		break;                                  \
+	    }                                           \
+	    __HANDLE_INTERRUPTS__;                      \
+	}
 # else /* use STDIO */
 #  define __WRITEBYTE__(ret, f, buf, isBuffered, handleType)        \
     if (isBuffered) {                                   \
-        for (;;) {                                      \
-            CLEAR_ERRNO;                                \
-            ret = putc(*(buf), f);                      \
-            if ((ret) >= 0) {                           \
-                (ret) = 1;                              \
-            } else if (ferror(f)) {                     \
-                /* SOLARIS/SPARC (2.6) generates spurious errors with errno = 0 */ \
-                if (errno == EINTR || errno == 0) {     \
-                    __HANDLE_INTERRUPTS__;              \
-                    clearerr(f);                        \
-                    continue;                           \
-                }                                       \
-            } else                                      \
-                (ret) = 0;                              \
-            break;                                      \
-        }                                               \
+	for (;;) {                                      \
+	    CLEAR_ERRNO;                                \
+	    ret = putc(*(buf), f);                      \
+	    if ((ret) >= 0) {                           \
+		(ret) = 1;                              \
+	    } else if (ferror(f)) {                     \
+		/* SOLARIS/SPARC (2.6) generates spurious errors with errno = 0 */ \
+		if (errno == EINTR || errno == 0) {     \
+		    __HANDLE_INTERRUPTS__;              \
+		    clearerr(f);                        \
+		    continue;                           \
+		}                                       \
+	    } else                                      \
+		(ret) = 0;                              \
+	    break;                                      \
+	}                                               \
     } else {                                            \
-        for (;;) {                                      \
-            CLEAR_ERRNO;                                \
-            (ret) = write(fileno(f), buf, 1);           \
-            if ((ret) >= 0) break;                      \
-            if (errno != EINTR) {                       \
-                break;                                  \
-            }                                           \
-            __HANDLE_INTERRUPTS__;                      \
-        }                                               \
+	for (;;) {                                      \
+	    CLEAR_ERRNO;                                \
+	    (ret) = write(fileno(f), buf, 1);           \
+	    if ((ret) >= 0) break;                      \
+	    if (errno != EINTR) {                       \
+		break;                                  \
+	    }                                           \
+	    __HANDLE_INTERRUPTS__;                      \
+	}                                               \
    }
 # endif /* use STDIO */
 
@@ -1204,64 +1204,64 @@
 #  define __WRITEBYTES__(ret, f, buf, cnt, isBuffered, handleType)    \
     (ret) = 0;                                          \
     {                                                   \
-        int __offs = 0;                                 \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            ret = WRITE(f, (buf)+__offs, (cnt)-__offs, handleType); \
-            if (ret <= 0) {                             \
-                if (ret < 0 && errno == EINTR) {        \
-                    __HANDLE_INTERRUPTS__;              \
-                    continue;                           \
-                }                                       \
-                break;                                  \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0;                                 \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    ret = WRITE(f, (buf)+__offs, (cnt)-__offs, handleType); \
+	    if (ret <= 0) {                             \
+		if (ret < 0 && errno == EINTR) {        \
+		    __HANDLE_INTERRUPTS__;              \
+		    continue;                           \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
    }
 # else /* use STDIO */
 #  define __WRITEBYTES__(ret, f, buf, cnt, isBuffered, handleType)    \
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        int __offs = 0;                                 \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = fwrite((buf)+__offs, 1, (cnt)-__offs, f);\
-            if ((ret) <= 0) {                            \
-                if (ferror(f)) {                        \
-                    if (errno == EINTR) {               \
-                        __HANDLE_INTERRUPTS__;          \
-                        clearerr(f);                    \
-                        continue;                       \
-                    }                                   \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-                break;                                  \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0;                                 \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = fwrite((buf)+__offs, 1, (cnt)-__offs, f);\
+	    if ((ret) <= 0) {                            \
+		if (ferror(f)) {                        \
+		    if (errno == EINTR) {               \
+			__HANDLE_INTERRUPTS__;          \
+			clearerr(f);                    \
+			continue;                       \
+		    }                                   \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     } else {                                            \
-        int __offs = 0;                                 \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = write(fileno(f), (buf)+__offs, (cnt)-__offs);\
-            if ((ret) <= 0) {                           \
-                if ((ret) < 0) {                        \
-                    if (errno == EINTR) {               \
-                        __HANDLE_INTERRUPTS__;          \
-                        continue;                       \
-                    }                                   \
-                }                                       \
-                break;                                  \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	int __offs = 0;                                 \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = write(fileno(f), (buf)+__offs, (cnt)-__offs);\
+	    if ((ret) <= 0) {                           \
+		if ((ret) < 0) {                        \
+		    if (errno == EINTR) {               \
+			__HANDLE_INTERRUPTS__;          \
+			continue;                       \
+		    }                                   \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
    }
 # endif /* use STDIO */
 
@@ -1275,25 +1275,25 @@
     int __ooffs = obj_offs;                             \
     int __offs = 0;                                     \
     char *buf = (char *)(obj);                          \
-                                                        \
+							\
     (ret) = 0;                                          \
     {                                                   \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            ret = WRITE(f, (buf)+__ooffs+__offs, (cnt)-__offs, handleType); \
-            if (ret <= 0) {                             \
-                if (ret < 0 && errno == EINTR) {        \
-                    __HANDLE_INTERRUPTS__;              \
-                    /* refetch */                       \
-                    buf = (char *)(obj);                \
-                    continue;                           \
-                }                                       \
-                break;                                  \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
-        if (__offs > 0)                                 \
-            (ret) = __offs;                             \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    ret = WRITE(f, (buf)+__ooffs+__offs, (cnt)-__offs, handleType); \
+	    if (ret <= 0) {                             \
+		if (ret < 0 && errno == EINTR) {        \
+		    __HANDLE_INTERRUPTS__;              \
+		    /* refetch */                       \
+		    buf = (char *)(obj);                \
+		    continue;                           \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
+	if (__offs > 0)                                 \
+	    (ret) = __offs;                             \
     }                                                   \
   }
 # else /* use STDIO */
@@ -1302,48 +1302,48 @@
     int __ooffs = obj_offs;                             \
     int __offs = 0;                                     \
     char *buf = (char *)(obj);                          \
-                                                        \
+							\
     (ret) = 0;                                          \
     if (isBuffered) {                                   \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = fwrite((buf)+__ooffs+__offs, 1, (cnt)-__offs, f);  \
-            if ((ret) <= 0) {                           \
-                if (ferror(f)) {                        \
-                    if (errno == EINTR) {               \
-                        __HANDLE_INTERRUPTS__;          \
-                        /* refetch */                   \
-                        buf = (char *)(obj);            \
-                        clearerr(f);                    \
-                        continue;                       \
-                    }                                   \
-                    break;                              \
-                } else {                                \
-                    (ret) = 0;                          \
-                }                                       \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = fwrite((buf)+__ooffs+__offs, 1, (cnt)-__offs, f);  \
+	    if ((ret) <= 0) {                           \
+		if (ferror(f)) {                        \
+		    if (errno == EINTR) {               \
+			__HANDLE_INTERRUPTS__;          \
+			/* refetch */                   \
+			buf = (char *)(obj);            \
+			clearerr(f);                    \
+			continue;                       \
+		    }                                   \
+		    break;                              \
+		} else {                                \
+		    (ret) = 0;                          \
+		}                                       \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
     } else {                                            \
-        while (__offs < (cnt)) {                        \
-            CLEAR_ERRNO;                                \
-            (ret) = write(fileno(f), (buf)+__ooffs+__offs, (cnt)-__offs); \
-            if ((ret) <= 0) {                           \
-                if ((ret) < 0) {                        \
-                    if (errno == EINTR){                \
-                        __HANDLE_INTERRUPTS__;          \
-                        /* refetch */                   \
-                        buf = (char *)(obj);            \
-                        continue;                       \
-                    }                                   \
-                }                                       \
-                break;                                  \
-            }                                           \
-            __offs += (ret);                            \
-        }                                               \
+	while (__offs < (cnt)) {                        \
+	    CLEAR_ERRNO;                                \
+	    (ret) = write(fileno(f), (buf)+__ooffs+__offs, (cnt)-__offs); \
+	    if ((ret) <= 0) {                           \
+		if ((ret) < 0) {                        \
+		    if (errno == EINTR){                \
+			__HANDLE_INTERRUPTS__;          \
+			/* refetch */                   \
+			buf = (char *)(obj);            \
+			continue;                       \
+		    }                                   \
+		}                                       \
+		break;                                  \
+	    }                                           \
+	    __offs += (ret);                            \
+	}                                               \
     }                                                   \
     if (__offs > 0)                                     \
-        (ret) = __offs;                                 \
+	(ret) = __offs;                                 \
   }
 # endif /* use STDIO */
 #endif /* unix */
@@ -1405,37 +1405,37 @@
 
     [Instance variables:]
 
-        handleType      <Symbol>        desribes what handle is:
-                                            win32: #fileHandle, #socketHandle,
-                                                   #filePointer, #socketFilePointer, #pipeFilePointer
-                                            unix: #filePointer, #socketFilePointer, #pipeFilePointer
-                                        needed for win32, which uses different APIs for the different handles (sigh)
-        handle          <Integer>       used to be always a filePointer somehow mapped to an integer (FILE* - not the fd);
-                                        now, either a filePointer or a handle (win32)
-        mode            <Symbol>        #readwrite, #readonly or #writeonly
-        buffered        <Boolean>       true, if buffered (i.e. collects characters - does
-                                        not output immediately)
-        binary          <Boolean>       true if in binary mode (reads bytes instead of chars)
-        eolMode         <Symbol>        one of nil, #nl, #cr or #crlf.
-                                        determines how lines should be terminated.
-                                        nil -> newLine (as in Unix);
-                                        #crlf -> with cr-lf (as in MSDOS)
-                                        #cr -> with cr (as in VMS)
-        hitEOF          <Boolean>       true, if EOF was reached
-
-        lastErrorNumber <Integer>       the value of errno (only valid right after the error -
-                                        updated with next i/o operation)
+	handleType      <Symbol>        desribes what handle is:
+					    win32: #fileHandle, #socketHandle,
+						   #filePointer, #socketFilePointer, #pipeFilePointer
+					    unix: #filePointer, #socketFilePointer, #pipeFilePointer
+					needed for win32, which uses different APIs for the different handles (sigh)
+	handle          <Integer>       used to be always a filePointer somehow mapped to an integer (FILE* - not the fd);
+					now, either a filePointer or a handle (win32)
+	mode            <Symbol>        #readwrite, #readonly or #writeonly
+	buffered        <Boolean>       true, if buffered (i.e. collects characters - does
+					not output immediately)
+	binary          <Boolean>       true if in binary mode (reads bytes instead of chars)
+	eolMode         <Symbol>        one of nil, #nl, #cr or #crlf.
+					determines how lines should be terminated.
+					nil -> newLine (as in Unix);
+					#crlf -> with cr-lf (as in MSDOS)
+					#cr -> with cr (as in VMS)
+	hitEOF          <Boolean>       true, if EOF was reached
+
+	lastErrorNumber <Integer>       the value of errno (only valid right after the error -
+					updated with next i/o operation)
 
     [Class variables:]
-        Lobby           <Registry>      keeps track of used ext-streams (to free up FILE*'s)
-
-        StreamErrorSignal       <Signal> parent of all stream errors (see Stream class)
-        InvalidReadSignal       <Signal> raised on read from writeonly stream
-        InvalidWriteSignal      <Signal> raised on write to readonly stream
-        InvalidModeSignal       <Signal> raised on text I/O with binary-stream
-                                         or binary I/O with text-stream
-        OpenErrorSignal         <Signal> raised if open fails
-        StreamNotOpenSignal     <Signal> raised on I/O with non-open stream
+	Lobby           <Registry>      keeps track of used ext-streams (to free up FILE*'s)
+
+	StreamErrorSignal       <Signal> parent of all stream errors (see Stream class)
+	InvalidReadSignal       <Signal> raised on read from writeonly stream
+	InvalidWriteSignal      <Signal> raised on write to readonly stream
+	InvalidModeSignal       <Signal> raised on text I/O with binary-stream
+					 or binary I/O with text-stream
+	OpenErrorSignal         <Signal> raised if open fails
+	StreamNotOpenSignal     <Signal> raised on I/O with non-open stream
 
     Additional notes:
       This class is implemented using the underlying stdio-c library package, which
@@ -1469,12 +1469,12 @@
       fread/fgetc and fwrite/putc respectively.
 
     [author:]
-        Claus Gittinger
-        Stefan Vogel (many, many fixes ...)
+	Claus Gittinger
+	Stefan Vogel (many, many fixes ...)
 
     [see also:]
-        FileStream Socket PipeStream
-        Filename OperatingSystem
+	FileStream Socket PipeStream
+	Filename OperatingSystem
 "
 !
 
@@ -1684,8 +1684,8 @@
      primitive code, or to wrap pipe-fds into externalStreams."
 
     ^ self new
-        buffered:buffered;
-        connectTo:aFileDescriptor withMode:modeSymbol handleType:handleTypeSymbol.
+	buffered:buffered;
+	connectTo:aFileDescriptor withMode:modeSymbol handleType:handleTypeSymbol.
 
     "
      the example below will probably fail (15 is a random FD):
@@ -1867,21 +1867,21 @@
      Due to a bug on older Windows systems, the default used
      is chosen very conservatively, as the copy used to fail with big buffers.
      However, modern Windows systems seem to not suffer from that bug,
-     and bigger buffer sizes will dramatically increase the performance of 
+     and bigger buffer sizes will dramatically increase the performance of
      copies to/from network drives.
-     Setting DefaultCopyBufferSize allows for fine tuning, 
+     Setting DefaultCopyBufferSize allows for fine tuning,
      in case you run into performance problems, or network buffer failures.
      When nil, a somewhat conservative compromise is used."
 
     DefaultCopyBufferSize notNil ifTrue:[^ DefaultCopyBufferSize].
-    
+
     OperatingSystem isMSDOSlike ifTrue:[
-        OperatingSystem isWin7Like ifTrue:[
-            ^ 64*1024
-        ] ifFalse:[    
-            "/ mhmh - NT hangs, when copying bigger blocks to a network drive - why ?
-            ^ 1 * 1024.
-        ].
+	OperatingSystem isWin7Like ifTrue:[
+	    ^ 64*1024
+	] ifFalse:[
+	    "/ mhmh - NT hangs, when copying bigger blocks to a network drive - why ?
+	    ^ 1 * 1024.
+	].
     ].
     ^ 32 * 1024.
 !
@@ -1892,12 +1892,12 @@
      Due to a bug on older Windows systems, the default used in copyToEndInto:
      is chosen very conservatively, as the copy used to fail with big buffers.
      However, modern Windows systems seem to not suffer from that bug,
-     and bigger buffer sizes will dramatically increase the performance of 
+     and bigger buffer sizes will dramatically increase the performance of
      copies to/from network drives.
      This method allows for fine tuning, in case you run into performance problems,
      or network buffer failures.
      When nil, a somewhat conservative compromise is used."
-     
+
     ^ DefaultCopyBufferSize
 ! !
 
@@ -1934,16 +1934,16 @@
      Report it via an Exception"
 
     anErrorSymbolOrNumber isInteger ifTrue:[
-        StreamError
-            raiseRequestWith:anErrorSymbolOrNumber
-            errorString:(' - os error:' , (OperatingSystem errorTextForNumber:anErrorSymbolOrNumber))
+	StreamError
+	    raiseRequestWith:anErrorSymbolOrNumber
+	    errorString:(' - os error:' , (OperatingSystem errorTextForNumber:anErrorSymbolOrNumber))
     ].
     (self respondsTo:anErrorSymbolOrNumber) ifTrue:[
-        self perform:anErrorSymbolOrNumber
+	self perform:anErrorSymbolOrNumber
     ] ifFalse:[
-        StreamError
-            raiseRequestWith:anErrorSymbolOrNumber
-            errorString:(' - ' , anErrorSymbolOrNumber printString)
+	StreamError
+	    raiseRequestWith:anErrorSymbolOrNumber
+	    errorString:(' - ' , anErrorSymbolOrNumber printString)
     ].
     ^ false
 ! !
@@ -2066,19 +2066,19 @@
     |text|
 
     binary ifTrue:[
-        ^ self upToEnd.
+	^ self upToEnd.
     ].
 
     "/ text mode
     text := StringCollection new.
     [self atEnd] whileFalse:[
-        |line|
-
-        line := self nextLine.
-        line isNil ifTrue:[
-            ^ text
-        ].
-        text add:line
+	|line|
+
+	line := self nextLine.
+	line isNil ifTrue:[
+	    ^ text
+	].
+	text add:line
     ].
     ^ text
 !
@@ -2105,7 +2105,7 @@
      (such as upTo)"
 
     binary ifTrue:[
-        ^ ByteArray
+	^ ByteArray
     ].
     ^ String
 !
@@ -2113,13 +2113,13 @@
 eolMode
     "return how end-of-line (EOL) is to be marked.
      Returns one one of:
-        #crlf         -> add a CR-NL, as in MSDOS
-        #cr           -> add a CR, as in VMS
-        #nl           -> add a NL, as in Unix
-        #eot          -> add an EOT (= 0x04, as used in some modems/protocols)
-        #etx          -> add an ETX (= 0x03, as used in some modems/protocols)
-        #nl           -> add a NL, as in Unix
-        nil           -> transparent
+	#crlf         -> add a CR-NL, as in MSDOS
+	#cr           -> add a CR, as in VMS
+	#nl           -> add a NL, as in Unix
+	#eot          -> add an EOT (= 0x04, as used in some modems/protocols)
+	#etx          -> add an ETX (= 0x03, as used in some modems/protocols)
+	#nl           -> add a NL, as in Unix
+	nil           -> transparent
     "
 
     ^ eolMode
@@ -2130,22 +2130,22 @@
 eolMode:aSymbolOrNil
     "specify how end-of-line (EOL) is to be marked.
      The argument may be one of:
-        #crlf         -> add a CR-NL, as in MSDOS
-        #cr           -> add a CR, as in VMS
-        #nl           -> add a NL, as in Unix
-        #eot          -> add an EOT (= 0x04, as used in some modems/protocols)
-        #etx          -> add an ETX (= 0x03, as used in some modems/protocols)
-        anyOther      -> like #nl
+	#crlf         -> add a CR-NL, as in MSDOS
+	#cr           -> add a CR, as in VMS
+	#nl           -> add a NL, as in Unix
+	#eot          -> add an EOT (= 0x04, as used in some modems/protocols)
+	#etx          -> add an ETX (= 0x03, as used in some modems/protocols)
+	anyOther      -> like #nl
     "
 
     aSymbolOrNil == #crnl ifTrue:[
-        eolMode := #crlf
+	eolMode := #crlf
     ] ifFalse:[
-        aSymbolOrNil == #lf ifTrue:[
-            eolMode := #nl
-        ] ifFalse:[
-            eolMode := aSymbolOrNil
-        ]
+	aSymbolOrNil == #lf ifTrue:[
+	    eolMode := #nl
+	] ifFalse:[
+	    eolMode := aSymbolOrNil
+	]
     ].
 
     "Modified (comment): / 06-12-2016 / 14:26:37 / cg"
@@ -2157,31 +2157,31 @@
      this may not be available on all platforms (i.e. non unix systems)."
 
     |fileClosed|
-    
+
 %{
     OBJ _handle  = __INST(handle);
 
     fileClosed = false;
     if (_handle != nil) {
-        if ((__INST(handleType) == @symbol(fileHandle))
-         || (__INST(handleType) == @symbol(socketHandle))) {
-            RETURN (_handle);
-        }
-        
-        if ((__INST(handleType) == nil)
-         || (__INST(handleType) == @symbol(filePointer))
-         || (__INST(handleType) == @symbol(socketFilePointer))
-         || (__INST(handleType) == @symbol(pipeFilePointer))) {
-            FILE *file = __FILEVal(_handle);
-            if (file != NULL) {
-                int fileNo = fileno(file);
-
-                if (fileNo >= 0) {
-                    RETURN ( __MKINT(fileNo));
-                }
-                fileClosed = true;
-            }
-        }
+	if ((__INST(handleType) == @symbol(fileHandle))
+	 || (__INST(handleType) == @symbol(socketHandle))) {
+	    RETURN (_handle);
+	}
+
+	if ((__INST(handleType) == nil)
+	 || (__INST(handleType) == @symbol(filePointer))
+	 || (__INST(handleType) == @symbol(socketFilePointer))
+	 || (__INST(handleType) == @symbol(pipeFilePointer))) {
+	    FILE *file = __FILEVal(_handle);
+	    if (file != NULL) {
+		int fileNo = fileno(file);
+
+		if (fileNo >= 0) {
+		    RETURN ( __MKINT(fileNo));
+		}
+		fileClosed = true;
+	    }
+	}
     }
 %}.
     handle isNil ifTrue:[^ self errorNotOpen].
@@ -2215,29 +2215,29 @@
     OBJ _handle  = __INST(handle);
 
     if (_handle != nil) {
-        if ((__INST(handleType) == @symbol(fileHandle))
-         || (__INST(handleType) == @symbol(socketHandle))) {
-            RETURN (_handle);
-        }
-        if (__INST(handleType) == @symbol(pipeFilePointer)) {
-            RETURN (__MKINT(fileno(__FILEVal(_handle))));
-        }
-        if ((__INST(handleType) == nil)
-         || (__INST(handleType) == @symbol(filePointer))
-         || (__INST(handleType) == @symbol(socketFilePointer))
-         || (__INST(handleType) == @symbol(pipeFilePointer))) {
+	if ((__INST(handleType) == @symbol(fileHandle))
+	 || (__INST(handleType) == @symbol(socketHandle))) {
+	    RETURN (_handle);
+	}
+	if (__INST(handleType) == @symbol(pipeFilePointer)) {
+	    RETURN (__MKINT(fileno(__FILEVal(_handle))));
+	}
+	if ((__INST(handleType) == nil)
+	 || (__INST(handleType) == @symbol(filePointer))
+	 || (__INST(handleType) == @symbol(socketFilePointer))
+	 || (__INST(handleType) == @symbol(pipeFilePointer))) {
 #ifdef __win32__
-            RETURN(__MKEXTERNALADDRESS(_get_osfhandle(fileno(__FILEVal(_handle)))));
+	    RETURN(__MKEXTERNALADDRESS(_get_osfhandle(fileno(__FILEVal(_handle)))));
 #else
-            FILE *file = __FILEVal(_handle);
-            if (file != NULL) {
-                int fileNo = fileno(file);
-                if (fileNo >= 0) {
-                    RETURN (__MKINT(fileNo));
-                }
-            }    
+	    FILE *file = __FILEVal(_handle);
+	    if (file != NULL) {
+		int fileNo = fileno(file);
+		if (fileNo >= 0) {
+		    RETURN (__MKINT(fileNo));
+		}
+	    }
 #endif
-        }
+	}
     }
 %}.
     ^ handle
@@ -2339,10 +2339,10 @@
      No error if the stream is not open."
 
     self isOpen ifTrue:[
-        self unregisterForFinalization.
-        self isOpen ifTrue:[
-            self closeFile.
-        ].
+	self unregisterForFinalization.
+	self isOpen ifTrue:[
+	    self closeFile.
+	].
     ].
 !
 
@@ -2516,10 +2516,10 @@
     "{ Pragma: +optSpace }"
 
     ^ StreamIOError newException
-        errorCode:errorNumber;
-        osErrorHolder:(OperatingSystem errorHolderForNumber:errorNumber);
-        parameter:self;
-        raiseRequest
+	errorCode:errorNumber;
+	osErrorHolder:(OperatingSystem errorHolderForNumber:errorNumber);
+	parameter:self;
+	raiseRequest
 
     "Modified: / 8.5.1999 / 20:12:16 / cg"
 !
@@ -2563,17 +2563,17 @@
     errorHolder := OperatingSystem errorHolderForNumber:errorNumber.
 
     exClass := (errorHolder errorCategory == #nonexistentSignal)
-        ifTrue:[ FileDoesNotExistException ]
-        ifFalse:[ OpenError ].
+	ifTrue:[ FileDoesNotExistException ]
+	ifFalse:[ OpenError ].
 
     ^ exClass newException
-        errorCode:errorNumber;
-        osErrorHolder:errorHolder;
-        "/ cg: initialized lazily - see OpenError>>#description
-        "/ errorString:(' : ' , errorHolder errorString);
-        parameter:self;
-        raiseRequest
-        "/ in:thisContext sender
+	errorCode:errorNumber;
+	osErrorHolder:errorHolder;
+	"/ cg: initialized lazily - see OpenError>>#description
+	"/ errorString:(' : ' , errorHolder errorString);
+	parameter:self;
+	raiseRequest
+	"/ in:thisContext sender
 
     "Modified: / 09-09-2011 / 07:22:49 / cg"
 !
@@ -2592,10 +2592,10 @@
     "{ Pragma: +optSpace }"
 
     ^ ReadError newException
-        errorCode:errorNumber;
-        osErrorHolder:(OperatingSystem errorHolderForNumber:errorNumber);
-        parameter:self;
-        raiseRequest
+	errorCode:errorNumber;
+	osErrorHolder:(OperatingSystem errorHolderForNumber:errorNumber);
+	parameter:self;
+	raiseRequest
 !
 
 writeError
@@ -2612,10 +2612,10 @@
     "{ Pragma: +optSpace }"
 
     ^ WriteError newException
-        errorCode:errorNumber;
-        osErrorHolder:(OperatingSystem errorHolderForNumber:errorNumber);
-        parameter:self;
-        raiseRequest
+	errorCode:errorNumber;
+	osErrorHolder:(OperatingSystem errorHolderForNumber:errorNumber);
+	parameter:self;
+	raiseRequest
 ! !
 
 !ExternalStream methodsFor:'finalization'!
@@ -2696,133 +2696,133 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-            && (__INST(mode) != @symbol(writeonly))
-            && (__INST(binary) != true)
-        ) {
-            f = __FILEVal(fp);
-            buffer[0] = '\0';
-
-            _buffered = (__INST(buffered) == true);
-            if (_buffered) {
-                __READING__(f);
-            }
-
-            rslt = nextPtr = buffer;
-            limit = buffer + sizeof(buffer) - 2;
-
-            for (;;) {
-                __READBYTE__(ret, f, nextPtr, _buffered, __INST(handleType));
-                if (ret <= 0) {
-                    if (nextPtr == buffer)
-                        rslt = NULL;
-                    if (ret == 0) {
-                        __INST(hitEOF) = true;
-                        break;
-                    } else {
-                        error = __mkSmallInteger(__threadErrno);
-                        goto err;
-                    }
-                }
-
-                if (*nextPtr == '\n') {
-                    cutOff = 1;
-                    *nextPtr = '\0';
-                    break;
-                }
-                if (*nextPtr == '\r') {
-                    char peekChar;
-
-                    /*
-                     * peek ahead for a newLine ...
-                     */
-                    __READBYTE__(ret, f, &peekChar, _buffered, __INST(handleType));
-                    if (ret <= 0) {
-                        cutOff = 1;
-                        *nextPtr = '\0';
-                        if (ret == 0) {
-                            __INST(hitEOF) = true;
-                            break;
-                        }
-                        error = __mkSmallInteger(__threadErrno);
-                        goto err;
-                    }
-
-                    if (peekChar == '\n') {
-                        cutOff = 2;
-                        *nextPtr = '\0';
-                        break;
-                    }
-
-                    __UNGETC__(peekChar, f, _buffered);
-
-                    cutOff = 1;
-                    *nextPtr = '\0';
-                    break;
-                }
-
-                nextPtr++;
-                if (nextPtr >= limit) {
-                    *nextPtr = '\0';
-                    lineTooLong = 1;
-                    // signalled below anyway; so no need to print on stderr
-#if 0                    
-                    if (@global(InfoPrinting) == true) {
-                        fprintf(stderr, "ExtStream [warning]: line truncated in nextLine\n");
-                    }
+	if (((fp = __INST(handle)) != nil)
+	    && (__INST(mode) != @symbol(writeonly))
+	    && (__INST(binary) != true)
+	) {
+	    f = __FILEVal(fp);
+	    buffer[0] = '\0';
+
+	    _buffered = (__INST(buffered) == true);
+	    if (_buffered) {
+		__READING__(f);
+	    }
+
+	    rslt = nextPtr = buffer;
+	    limit = buffer + sizeof(buffer) - 2;
+
+	    for (;;) {
+		__READBYTE__(ret, f, nextPtr, _buffered, __INST(handleType));
+		if (ret <= 0) {
+		    if (nextPtr == buffer)
+			rslt = NULL;
+		    if (ret == 0) {
+			__INST(hitEOF) = true;
+			break;
+		    } else {
+			error = __mkSmallInteger(__threadErrno);
+			goto err;
+		    }
+		}
+
+		if (*nextPtr == '\n') {
+		    cutOff = 1;
+		    *nextPtr = '\0';
+		    break;
+		}
+		if (*nextPtr == '\r') {
+		    char peekChar;
+
+		    /*
+		     * peek ahead for a newLine ...
+		     */
+		    __READBYTE__(ret, f, &peekChar, _buffered, __INST(handleType));
+		    if (ret <= 0) {
+			cutOff = 1;
+			*nextPtr = '\0';
+			if (ret == 0) {
+			    __INST(hitEOF) = true;
+			    break;
+			}
+			error = __mkSmallInteger(__threadErrno);
+			goto err;
+		    }
+
+		    if (peekChar == '\n') {
+			cutOff = 2;
+			*nextPtr = '\0';
+			break;
+		    }
+
+		    __UNGETC__(peekChar, f, _buffered);
+
+		    cutOff = 1;
+		    *nextPtr = '\0';
+		    break;
+		}
+
+		nextPtr++;
+		if (nextPtr >= limit) {
+		    *nextPtr = '\0';
+		    lineTooLong = 1;
+		    // signalled below anyway; so no need to print on stderr
+#if 0
+		    if (@global(InfoPrinting) == true) {
+			fprintf(stderr, "ExtStream [warning]: line truncated in nextLine\n");
+		    }
 #endif
-                    break;
-                }
-            }
-
-            if (rslt != NULL) {
-                len = nextPtr-buffer;
-
-                if (__isSmallInteger(__INST(position))) {
-                    INT np = __intVal(__INST(position)) + len + cutOff;
-                    OBJ t;
-
-                    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                } else {
-                    __INST(position) = nil; /* i.e. do not know */
-                }
-                /* remove any EOL character */
-                if (len != 0) {
-                    if (buffer[len-1] == '\n') {
-                        buffer[--len] = '\0';
-                    }
-                    if ((len != 0) && (buffer[len-1] == '\r')) {
-                        buffer[--len] = '\0';
-                    }
-                }
-                line = __MKSTRING_L(buffer, len);
-                if (! lineTooLong) {
-                    RETURN ( line );
-                }
-            }
-        }
+		    break;
+		}
+	    }
+
+	    if (rslt != NULL) {
+		len = nextPtr-buffer;
+
+		if (__isSmallInteger(__INST(position))) {
+		    INT np = __intVal(__INST(position)) + len + cutOff;
+		    OBJ t;
+
+		    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+		} else {
+		    __INST(position) = nil; /* i.e. do not know */
+		}
+		/* remove any EOL character */
+		if (len != 0) {
+		    if (buffer[len-1] == '\n') {
+			buffer[--len] = '\0';
+		    }
+		    if ((len != 0) && (buffer[len-1] == '\r')) {
+			buffer[--len] = '\0';
+		    }
+		}
+		line = __MKSTRING_L(buffer, len);
+		if (! lineTooLong) {
+		    RETURN ( line );
+		}
+	    }
+	}
     }
 err: ;
 %}.
     line notNil ifTrue:[
-        "/ the line as read is longer than 32k characters (boy - what a line)
-        "/ The exception could be handled by reading more and returning the
-        "/ concatenation in your exception handler (the receiver and the partial
-        "/ line are passed as parameter)
-
-        LineTooLongErrorSignal isHandled ifTrue:[
-            ^ LineTooLongErrorSignal
-                raiseRequestWith:(Array with:self with:line)
-                     errorString:('line too long read error')
-        ].
-        'ExternalStream [warning]: line truncated in nextLine' infoPrintCR.
-        ^ line , self nextLine
+	"/ the line as read is longer than 32k characters (boy - what a line)
+	"/ The exception could be handled by reading more and returning the
+	"/ concatenation in your exception handler (the receiver and the partial
+	"/ line are passed as parameter)
+
+	LineTooLongErrorSignal isHandled ifTrue:[
+	    ^ LineTooLongErrorSignal
+		raiseRequestWith:(Array with:self with:line)
+		     errorString:('line too long read error')
+	].
+	'ExternalStream [warning]: line truncated in nextLine' infoPrintCR.
+	^ line , self nextLine
     ].
 
     hitEOF ifTrue:[^ self pastEndRead].
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        ^ self readError:error
+	lastErrorNumber := error.
+	^ self readError:error
     ].
     handle isNil ifTrue:[^ self errorNotOpen].
     (mode == #writeonly) ifTrue:[^ self errorWriteOnly].
@@ -3006,13 +3006,13 @@
      the receiver will trigger an ioInterrupt.
      If cleared (which is the default) no special notification is made.
      Notice:
-        not every OS supports this
-        - check with OS>>supportsIOInterrupts before using"
+	not every OS supports this
+	- check with OS>>supportsIOInterrupts before using"
 
     |fd|
 
     OperatingSystem supportsIOInterrupts ifFalse:[
-        ^ self errorUnsupportedOperation
+	^ self errorUnsupportedOperation
     ].
 
     fd := self fileDescriptor.
@@ -3020,7 +3020,7 @@
     handle isNil ifTrue:[^ self errorNotOpen].
 
     aBoolean ifTrue:[
-        ^ OperatingSystem enableIOInterruptsOn:fd
+	^ OperatingSystem enableIOInterruptsOn:fd
     ].
     ^ OperatingSystem disableIOInterruptsOn:fd
 
@@ -3540,7 +3540,7 @@
 
     readCount := self nextBytes:count into:aCollection startingAt:start.
     readCount = count ifTrue:[
-        ^ aCollection.
+	^ aCollection.
     ].
     ^ aCollection copyFrom:1 to:start+readCount-1.
 !
@@ -3556,14 +3556,14 @@
     buffer := self contentsSpecies uninitializedNew:count.
     n := self nextAvailableBytes:count into:buffer startingAt:1.
     n == 0 ifTrue:[
-        binary ifTrue:[
-            ^ #[]
-        ].
-        ^ ''
+	binary ifTrue:[
+	    ^ #[]
+	].
+	^ ''
     ].
 
     n ~~ count ifTrue:[
-        ^ buffer copyTo:n
+	^ buffer copyTo:n
     ].
     ^ buffer.
 
@@ -3621,99 +3621,99 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-            && (__INST(mode) != @symbol(writeonly))
-            && __bothSmallInteger(count, start)
-        ) {
-            f = __FILEVal(fp);
-
-            cnt = __intVal(count);
-            offs = __intVal(start) - 1;
-
-            if (__isExternalBytesLike(anObject)) {
-                OBJ sz;
-
-                nInstBytes = 0;
-                extPtr = (char *)(__externalBytesAddress(anObject));
-                if (extPtr == NULL) goto bad;
-                sz = __externalBytesSize(anObject);
-                if (__isSmallInteger(sz)) {
-                    objSize = __intVal(sz);
-                } else {
-                    objSize = 0; /* unknown */
-                }
-            } else {
-                OBJ oClass = __Class(anObject);
-                int nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
-
-                nInstBytes = OHDR_SIZE + __OBJS2BYTES__(nInstVars);
-
-                switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
-                    case BYTEARRAY:
-                    case WORDARRAY:
-                    case LONGARRAY:
-                    case SWORDARRAY:
-                    case SLONGARRAY:
-                    case FLOATARRAY:
-                        break;
-                    case DOUBLEARRAY:
+	if (((fp = __INST(handle)) != nil)
+	    && (__INST(mode) != @symbol(writeonly))
+	    && __bothSmallInteger(count, start)
+	) {
+	    f = __FILEVal(fp);
+
+	    cnt = __intVal(count);
+	    offs = __intVal(start) - 1;
+
+	    if (__isExternalBytesLike(anObject)) {
+		OBJ sz;
+
+		nInstBytes = 0;
+		extPtr = (char *)(__externalBytesAddress(anObject));
+		if (extPtr == NULL) goto bad;
+		sz = __externalBytesSize(anObject);
+		if (__isSmallInteger(sz)) {
+		    objSize = __intVal(sz);
+		} else {
+		    objSize = 0; /* unknown */
+		}
+	    } else {
+		OBJ oClass = __Class(anObject);
+		int nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
+
+		nInstBytes = OHDR_SIZE + __OBJS2BYTES__(nInstVars);
+
+		switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
+		    case BYTEARRAY:
+		    case WORDARRAY:
+		    case LONGARRAY:
+		    case SWORDARRAY:
+		    case SLONGARRAY:
+		    case FLOATARRAY:
+			break;
+		    case DOUBLEARRAY:
 #ifdef __NEED_DOUBLE_ALIGN
-                        nInstBytes = (nInstBytes-1+__DOUBLE_ALIGN) &~ (__DOUBLE_ALIGN-1);
+			nInstBytes = (nInstBytes-1+__DOUBLE_ALIGN) &~ (__DOUBLE_ALIGN-1);
 #endif
-                        break;
-                    case LONGLONGARRAY:
-                    case SLONGLONGARRAY:
+			break;
+		    case LONGLONGARRAY:
+		    case SLONGLONGARRAY:
 #ifdef __NEED_LONGLONG_ALIGN
-                        nInstBytes = (nInstBytes-1+__LONGLONG_ALIGN) &~ (__LONGLONG_ALIGN-1);
+			nInstBytes = (nInstBytes-1+__LONGLONG_ALIGN) &~ (__LONGLONG_ALIGN-1);
 #endif
-                        break;
-                    default:
-                        goto bad;
-                }
-                extPtr = (char *)0;
-                objSize = __Size(anObject) - nInstBytes;
-            }
-
-            if ((offs >= 0) && (cnt >= 0) && (objSize >= (cnt + offs))) {
-                _buffered = (__INST(buffered) == true);
-                if (_buffered) {
-                    __READING__(f);
-                }
-
-                if (extPtr) {
-                    __READAVAILBYTES__(ret, f, extPtr+offs, cnt, _buffered, __INST(handleType));
-                } else {
-                    /*
-                     * on interrupt, anObject may be moved to another location.
-                     * So we pass (char *)__InstPtr(anObject) + nInstBytes + offs to the macro __READ_BYTES__,
-                     * to get a new address.
-                     */
-                    offs += nInstBytes;
-                    __READAVAILBYTES_OBJ__(ret, f, anObject, offs, cnt, _buffered, __INST(handleType));
-                }
-                /* 0 is NOT an EOF condition here ... */
-                if (ret >= 0) {
-                    if (__isSmallInteger(__INST(position))) {
-                        INT np = __intVal(__INST(position)) + ret;
-                        OBJ t;
-
-                        t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                    } else {
-                        __INST(position) = nil; /* i.e. do not know */
-                    }
-                    RETURN (__mkSmallInteger(ret));
-                }
-                __INST(position) = nil;
-                error = __mkSmallInteger(__threadErrno);
-            }
-        }
+			break;
+		    default:
+			goto bad;
+		}
+		extPtr = (char *)0;
+		objSize = __Size(anObject) - nInstBytes;
+	    }
+
+	    if ((offs >= 0) && (cnt >= 0) && (objSize >= (cnt + offs))) {
+		_buffered = (__INST(buffered) == true);
+		if (_buffered) {
+		    __READING__(f);
+		}
+
+		if (extPtr) {
+		    __READAVAILBYTES__(ret, f, extPtr+offs, cnt, _buffered, __INST(handleType));
+		} else {
+		    /*
+		     * on interrupt, anObject may be moved to another location.
+		     * So we pass (char *)__InstPtr(anObject) + nInstBytes + offs to the macro __READ_BYTES__,
+		     * to get a new address.
+		     */
+		    offs += nInstBytes;
+		    __READAVAILBYTES_OBJ__(ret, f, anObject, offs, cnt, _buffered, __INST(handleType));
+		}
+		/* 0 is NOT an EOF condition here ... */
+		if (ret >= 0) {
+		    if (__isSmallInteger(__INST(position))) {
+			INT np = __intVal(__INST(position)) + ret;
+			OBJ t;
+
+			t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+		    } else {
+			__INST(position) = nil; /* i.e. do not know */
+		    }
+		    RETURN (__mkSmallInteger(ret));
+		}
+		__INST(position) = nil;
+		error = __mkSmallInteger(__threadErrno);
+	    }
+	}
     }
 bad: ;
 %}.
     hitEOF ifTrue:[^ 0].
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        ^ self readError:error
+	lastErrorNumber := error.
+	^ self readError:error
     ].
     handle isNil ifTrue:[^ self errorNotOpen].
     (mode == #writeonly) ifTrue:[^ self errorWriteOnly].
@@ -3834,98 +3834,98 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-            && (__INST(mode) != @symbol(writeonly))
-            && __bothSmallInteger(count, start)
-        ) {
-            f = __FILEVal(fp);
-
-            cnt = __intVal(count);
-            offs = __intVal(start) - 1;
-
-            if (__isExternalBytesLike(anObject)) {
-                OBJ sz;
-
-                nInstBytes = 0;
-                extPtr = (char *)(__externalBytesAddress(anObject));
-                if (extPtr == NULL) goto bad;
-                sz = __externalBytesSize(anObject);
-                if (__isSmallInteger(sz)) {
-                    objSize = __intVal(sz);
-                } else {
-                    objSize = 0; /* unknown */
-                }
-            } else {
-                OBJ oClass = __Class(anObject);
-                int nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
-
-                nInstBytes = OHDR_SIZE + __OBJS2BYTES__(nInstVars);
-                switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
-                    case BYTEARRAY:
-                    case WORDARRAY:
-                    case LONGARRAY:
-                    case SWORDARRAY:
-                    case SLONGARRAY:
-                    case FLOATARRAY:
-                        break;
-                    case DOUBLEARRAY:
+	if (((fp = __INST(handle)) != nil)
+	    && (__INST(mode) != @symbol(writeonly))
+	    && __bothSmallInteger(count, start)
+	) {
+	    f = __FILEVal(fp);
+
+	    cnt = __intVal(count);
+	    offs = __intVal(start) - 1;
+
+	    if (__isExternalBytesLike(anObject)) {
+		OBJ sz;
+
+		nInstBytes = 0;
+		extPtr = (char *)(__externalBytesAddress(anObject));
+		if (extPtr == NULL) goto bad;
+		sz = __externalBytesSize(anObject);
+		if (__isSmallInteger(sz)) {
+		    objSize = __intVal(sz);
+		} else {
+		    objSize = 0; /* unknown */
+		}
+	    } else {
+		OBJ oClass = __Class(anObject);
+		int nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
+
+		nInstBytes = OHDR_SIZE + __OBJS2BYTES__(nInstVars);
+		switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
+		    case BYTEARRAY:
+		    case WORDARRAY:
+		    case LONGARRAY:
+		    case SWORDARRAY:
+		    case SLONGARRAY:
+		    case FLOATARRAY:
+			break;
+		    case DOUBLEARRAY:
 #ifdef __NEED_DOUBLE_ALIGN
-                        nInstBytes = (nInstBytes-1+__DOUBLE_ALIGN) &~ (__DOUBLE_ALIGN-1);
+			nInstBytes = (nInstBytes-1+__DOUBLE_ALIGN) &~ (__DOUBLE_ALIGN-1);
 #endif
-                        break;
-                    case LONGLONGARRAY:
-                    case SLONGLONGARRAY:
+			break;
+		    case LONGLONGARRAY:
+		    case SLONGLONGARRAY:
 #ifdef __NEED_LONGLONG_ALIGN
-                        nInstBytes = (nInstBytes-1+__LONGLONG_ALIGN) &~ (__LONGLONG_ALIGN-1);
+			nInstBytes = (nInstBytes-1+__LONGLONG_ALIGN) &~ (__LONGLONG_ALIGN-1);
 #endif
-                        break;
-                    default:
-                        goto bad;
-                }
-                extPtr = (char *)0;
-                objSize = __Size(anObject) - nInstBytes;
-            }
-            if ((offs >= 0) && (cnt >= 0) && (objSize >= (cnt + offs))) {
-                _buffered = (__INST(buffered) == true);
-                if (_buffered) {
-                    __READING__(f);
-                }
-
-                if (extPtr) {
-                    __READBYTES__(ret, f, extPtr+offs, cnt, _buffered, __INST(handleType));
-                } else {
-                    /*
-                     * on interrupt, anObject may be moved to another location.
-                     * So we pass anObject, and the offset to the __READBYTES_OBJ__ macro.
-                     */
-                    offs += nInstBytes;
-                    __READBYTES_OBJ__(ret, f, anObject, offs, cnt, _buffered, __INST(handleType));
-                }
-
-                if (ret > 0) {
-                    if (__isSmallInteger(__INST(position))) {
-                        INT np = __intVal(__INST(position)) + ret;
-                        OBJ t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                    } else {
-                        __INST(position) = nil; /* i.e. do not know */
-                    }
-                    RETURN (__mkSmallInteger(ret));
-                }
-                if (ret == 0) {
-                    __INST(hitEOF) = true;
-                } else /* ret < 0 */ {
-                    __INST(position) = nil;
-                    error = __mkSmallInteger(__threadErrno);
-                }
-            }
-        }
+			break;
+		    default:
+			goto bad;
+		}
+		extPtr = (char *)0;
+		objSize = __Size(anObject) - nInstBytes;
+	    }
+	    if ((offs >= 0) && (cnt >= 0) && (objSize >= (cnt + offs))) {
+		_buffered = (__INST(buffered) == true);
+		if (_buffered) {
+		    __READING__(f);
+		}
+
+		if (extPtr) {
+		    __READBYTES__(ret, f, extPtr+offs, cnt, _buffered, __INST(handleType));
+		} else {
+		    /*
+		     * on interrupt, anObject may be moved to another location.
+		     * So we pass anObject, and the offset to the __READBYTES_OBJ__ macro.
+		     */
+		    offs += nInstBytes;
+		    __READBYTES_OBJ__(ret, f, anObject, offs, cnt, _buffered, __INST(handleType));
+		}
+
+		if (ret > 0) {
+		    if (__isSmallInteger(__INST(position))) {
+			INT np = __intVal(__INST(position)) + ret;
+			OBJ t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+		    } else {
+			__INST(position) = nil; /* i.e. do not know */
+		    }
+		    RETURN (__mkSmallInteger(ret));
+		}
+		if (ret == 0) {
+		    __INST(hitEOF) = true;
+		} else /* ret < 0 */ {
+		    __INST(position) = nil;
+		    error = __mkSmallInteger(__threadErrno);
+		}
+	    }
+	}
     }
 bad: ;
 %}.
     hitEOF ifTrue:[^ 0].
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        ^ self readError:error
+	lastErrorNumber := error.
+	^ self readError:error
     ].
     handle isNil ifTrue:[^ self errorNotOpen].
     (mode == #writeonly) ifTrue:[^ self errorWriteOnly].
@@ -4268,15 +4268,15 @@
 nextWord
     <resource: #obsolete>
     "in text-mode:
-         read the alphaNumeric next word (i.e. up to non letter-or-digit).
-         return a string containing those characters.
+	 read the alphaNumeric next word (i.e. up to non letter-or-digit).
+	 return a string containing those characters.
      in binary-mode:
-         read two bytes (msb-first) and return the value as a 16-bit
-         unsigned Integer (for compatibility with other smalltalks)"
+	 read two bytes (msb-first) and return the value as a 16-bit
+	 unsigned Integer (for compatibility with other smalltalks)"
 
     binary ifTrue:[
-        self obsoleteMethodWarning:'use #nextUnsignedInt16MSB:true'.
-        ^ self nextUnsignedInt16MSB:true
+	self obsoleteMethodWarning:'use #nextUnsignedInt16MSB:true'.
+	^ self nextUnsignedInt16MSB:true
     ].
     self obsoleteMethodWarning:'use #nextAlphaNumericWord'.
     ^ self nextAlphaNumericWord
@@ -4356,8 +4356,8 @@
 %{
     int num;
     union {
-        char bytes[2];
-        short shortVal;
+	char bytes[2];
+	short shortVal;
     } u;
     OBJ fp;
 
@@ -4367,62 +4367,62 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-         && (__INST(mode) != @symbol(readonly))
-        ) {
-            FILEPOINTER f = __FILEVal(fp);
-            int _buffered = (__INST(buffered) == true);
-            int cnt;
-
-            if (__isSmallInteger(anIntegerOrCharacter)) {
-                num = __intVal(anIntegerOrCharacter);
-            } else if (__isCharacter(anIntegerOrCharacter)) {
-                num = __smallIntegerVal(__characterVal(anIntegerOrCharacter));
-            } else
-                goto out;
-
-            if (msbFlag == true) {
+	if (((fp = __INST(handle)) != nil)
+	 && (__INST(mode) != @symbol(readonly))
+	) {
+	    FILEPOINTER f = __FILEVal(fp);
+	    int _buffered = (__INST(buffered) == true);
+	    int cnt;
+
+	    if (__isSmallInteger(anIntegerOrCharacter)) {
+		num = __intVal(anIntegerOrCharacter);
+	    } else if (__isCharacter(anIntegerOrCharacter)) {
+		num = __smallIntegerVal(__characterVal(anIntegerOrCharacter));
+	    } else
+		goto out;
+
+	    if (msbFlag == true) {
 #if defined(__MSBFIRST__)
-                u.shortVal = num;
+		u.shortVal = num;
 #else
-                u.bytes[0] = (num >> 8) & 0xFF;
-                u.bytes[1] = num & 0xFF;
+		u.bytes[0] = (num >> 8) & 0xFF;
+		u.bytes[1] = num & 0xFF;
 #endif
-            } else {
+	    } else {
 #if defined(__LSBFIRST__)
-                u.shortVal = num;
+		u.shortVal = num;
 #else
-                u.bytes[1] = (num >> 8) & 0xFF;
-                u.bytes[0] = num & 0xFF;
+		u.bytes[1] = (num >> 8) & 0xFF;
+		u.bytes[0] = num & 0xFF;
 #endif
-            }
-
-            if (_buffered) {
-                __WRITING__(f)
-            }
-            __WRITEBYTES__(cnt, f, u.bytes, 2, _buffered, __INST(handleType));
-
-            if (cnt == 2) {
-                if (__isSmallInteger(__INST(position))) {
-                    INT np = __intVal(__INST(position)) + 2;
-                    OBJ t;
-
-                    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                } else {
-                    __INST(position) = nil; /* i.e. do not know */
-                }
-                RETURN ( self );
-            }
-            __INST(position) = nil; /* i.e. do not know */
-            error = __mkSmallInteger(__threadErrno);
-        }
+	    }
+
+	    if (_buffered) {
+		__WRITING__(f)
+	    }
+	    __WRITEBYTES__(cnt, f, u.bytes, 2, _buffered, __INST(handleType));
+
+	    if (cnt == 2) {
+		if (__isSmallInteger(__INST(position))) {
+		    INT np = __intVal(__INST(position)) + 2;
+		    OBJ t;
+
+		    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+		} else {
+		    __INST(position) = nil; /* i.e. do not know */
+		}
+		RETURN ( self );
+	    }
+	    __INST(position) = nil; /* i.e. do not know */
+	    error = __mkSmallInteger(__threadErrno);
+	}
     }
 out:;
 %}.
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        self writeError:error.
-        ^ self
+	lastErrorNumber := error.
+	self writeError:error.
+	^ self
     ].
     handle isNil ifTrue:[self errorNotOpen. ^ self].
     (mode == #readonly) ifTrue:[self errorReadOnly. ^ self].
@@ -4456,8 +4456,8 @@
 %{
     int num;
     union {
-        char bytes[2];
-        short shortVal;
+	char bytes[2];
+	short shortVal;
     } u;
     OBJ fp;
 
@@ -4467,41 +4467,41 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-         && (__INST(mode) != @symbol(readonly))
-        ) {
-            FILEPOINTER f = __FILEVal(fp);
-            int _buffered = (__INST(buffered) == true);
-            int cnt;
-
-            if (__isSmallInteger(anIntegerOrCharacter)) {
-                num = __intVal(anIntegerOrCharacter);
-            } else if (__isCharacter(anIntegerOrCharacter)) {
-                num = __smallIntegerVal(__characterVal(anIntegerOrCharacter));
-            } else
-                goto out;
-
-            u.shortVal = num;
-
-            if (_buffered) {
-                __WRITING__(f)
-            }
-            __WRITEBYTES__(cnt, f, u.bytes, 2, _buffered, __INST(handleType));
-
-            if (cnt == 2) {
-                if (__isSmallInteger(__INST(position))) {
-                    INT np = __intVal(__INST(position)) + 2;
-                    OBJ t;
-
-                    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                } else {
-                    __INST(position) = nil; /* i.e. do not know */
-                }
-                RETURN ( self );
-            }
-            __INST(position) = nil; /* i.e. do not know */
-            error = __mkSmallInteger(__threadErrno);
-        }
+	if (((fp = __INST(handle)) != nil)
+	 && (__INST(mode) != @symbol(readonly))
+	) {
+	    FILEPOINTER f = __FILEVal(fp);
+	    int _buffered = (__INST(buffered) == true);
+	    int cnt;
+
+	    if (__isSmallInteger(anIntegerOrCharacter)) {
+		num = __intVal(anIntegerOrCharacter);
+	    } else if (__isCharacter(anIntegerOrCharacter)) {
+		num = __smallIntegerVal(__characterVal(anIntegerOrCharacter));
+	    } else
+		goto out;
+
+	    u.shortVal = num;
+
+	    if (_buffered) {
+		__WRITING__(f)
+	    }
+	    __WRITEBYTES__(cnt, f, u.bytes, 2, _buffered, __INST(handleType));
+
+	    if (cnt == 2) {
+		if (__isSmallInteger(__INST(position))) {
+		    INT np = __intVal(__INST(position)) + 2;
+		    OBJ t;
+
+		    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+		} else {
+		    __INST(position) = nil; /* i.e. do not know */
+		}
+		RETURN ( self );
+	    }
+	    __INST(position) = nil; /* i.e. do not know */
+	    error = __mkSmallInteger(__threadErrno);
+	}
     }
 out:;
 %}.
@@ -4523,29 +4523,29 @@
 %{
     int num;
     union {
-        char bytes[4];
-        int intVal;
+	char bytes[4];
+	int intVal;
     } u;
     OBJ fp;
 
     __INST(lastErrorNumber) = nil;
     if (__isSmallInteger(aNumber)) {
-        num = __intVal(aNumber);
+	num = __intVal(aNumber);
     } else {
 #if __POINTER_SIZE__ == 8
-        // always more than 4-bytes
-        goto badArg;
+	// always more than 4-bytes
+	goto badArg;
 #else
-        num = __longIntVal(aNumber);
-        if (num == 0) {
-            num = __signedLongIntVal(aNumber);
-            if (num == 0) {
-                /* bad arg or out-of-range integer
-                 * (handled by the fallBack code)
-                 */
-                goto badArg;
-            }
-        }
+	num = __longIntVal(aNumber);
+	if (num == 0) {
+	    num = __signedLongIntVal(aNumber);
+	    if (num == 0) {
+		/* bad arg or out-of-range integer
+		 * (handled by the fallBack code)
+		 */
+		goto badArg;
+	    }
+	}
 #endif
     }
 
@@ -4554,65 +4554,65 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-         && (__INST(mode) != @symbol(readonly))
-        ) {
-            int _buffered = (__INST(buffered) == true);
-            FILEPOINTER f = __FILEVal(fp);
-            int cnt;
-
-            if (msbFlag == true) {
+	if (((fp = __INST(handle)) != nil)
+	 && (__INST(mode) != @symbol(readonly))
+	) {
+	    int _buffered = (__INST(buffered) == true);
+	    FILEPOINTER f = __FILEVal(fp);
+	    int cnt;
+
+	    if (msbFlag == true) {
 #if defined(__MSBFIRST__)
-                u.intVal = num;
+		u.intVal = num;
 #else
-                u.bytes[0] = (num >> 24) & 0xFF;
-                u.bytes[1] = (num >> 16) & 0xFF;
-                u.bytes[2] = (num >> 8) & 0xFF;
-                u.bytes[3] = num & 0xFF;
+		u.bytes[0] = (num >> 24) & 0xFF;
+		u.bytes[1] = (num >> 16) & 0xFF;
+		u.bytes[2] = (num >> 8) & 0xFF;
+		u.bytes[3] = num & 0xFF;
 #endif
-            } else {
+	    } else {
 #if defined(__LSBFIRST__)
-                u.intVal = num;
+		u.intVal = num;
 #else
-                u.bytes[3] = (num >> 24) & 0xFF;
-                u.bytes[2] = (num >> 16) & 0xFF;
-                u.bytes[1] = (num >> 8) & 0xFF;
-                u.bytes[0] = num & 0xFF;
+		u.bytes[3] = (num >> 24) & 0xFF;
+		u.bytes[2] = (num >> 16) & 0xFF;
+		u.bytes[1] = (num >> 8) & 0xFF;
+		u.bytes[0] = num & 0xFF;
 #endif
-            }
-
-            if (_buffered) {
-                __WRITING__(f)
-            }
-            __WRITEBYTES__(cnt, f, u.bytes, 4, _buffered, __INST(handleType));
-
-            if (cnt == 4) {
-                if (__isSmallInteger(__INST(position))) {
-                    INT np = __intVal(__INST(position)) + 4;
-                    OBJ t;
-
-                    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                } else {
-                    __INST(position) = nil; /* i.e. do not know */
-                }
-                RETURN ( self );
-            }
-            __INST(position) = nil; /* i.e. do not know */
-            error = __mkSmallInteger(__threadErrno);
-        }
+	    }
+
+	    if (_buffered) {
+		__WRITING__(f)
+	    }
+	    __WRITEBYTES__(cnt, f, u.bytes, 4, _buffered, __INST(handleType));
+
+	    if (cnt == 4) {
+		if (__isSmallInteger(__INST(position))) {
+		    INT np = __intVal(__INST(position)) + 4;
+		    OBJ t;
+
+		    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+		} else {
+		    __INST(position) = nil; /* i.e. do not know */
+		}
+		RETURN ( self );
+	    }
+	    __INST(position) = nil; /* i.e. do not know */
+	    error = __mkSmallInteger(__threadErrno);
+	}
     }
 badArg: ;
 %}.
     handle isNil ifTrue:[self errorNotOpen. ^ self].
     (mode == #readonly) ifTrue:[self errorReadOnly. ^ self].
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        self writeError:error.
-        ^ self
+	lastErrorNumber := error.
+	self writeError:error.
+	^ self
     ].
 
     aNumber isInteger ifTrue:[
-        ^ super nextPutInt32:aNumber MSB:msbFlag
+	^ super nextPutInt32:aNumber MSB:msbFlag
     ].
     self argumentMustBeInteger
 
@@ -4640,37 +4640,37 @@
      (i.e. both signed and unsigned int32 values can be written.
      Works in both binary and text modes.
      Notice: this message should not be sent explicitly by ANY program.
-             the following implementation replaces the code of either nextPutInt32MSB or LSB
-             dynamically (see #initialize on the class side)"
+	     the following implementation replaces the code of either nextPutInt32MSB or LSB
+	     dynamically (see #initialize on the class side)"
 
     |error|
 
 %{
     int num;
     union {
-        char bytes[4];
-        int intVal;
+	char bytes[4];
+	int intVal;
     } u;
     OBJ fp;
 
     __INST(lastErrorNumber) = nil;
     if (__isSmallInteger(anInteger)) {
-        num = __intVal(anInteger);
+	num = __intVal(anInteger);
     } else {
 #if __POINTER_SIZE__ == 8
-        // always more than 4-bytes
-        goto badArg;
+	// always more than 4-bytes
+	goto badArg;
 #else
-        num = __longIntVal(anInteger);
-        if (num == 0) {
-            num = __signedLongIntVal(anInteger);
-            if (num == 0) {
-                /* bad arg or out-of-range integer
-                 * (handled by the fallBack code)
-                 */
-                goto badArg;
-            }
-        }
+	num = __longIntVal(anInteger);
+	if (num == 0) {
+	    num = __signedLongIntVal(anInteger);
+	    if (num == 0) {
+		/* bad arg or out-of-range integer
+		 * (handled by the fallBack code)
+		 */
+		goto badArg;
+	    }
+	}
 #endif
     }
 
@@ -4679,33 +4679,33 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-         && (__INST(mode) != @symbol(readonly))
-        ) {
-            int _buffered = (__INST(buffered) == true);
-            FILEPOINTER f = __FILEVal(fp);
-            int cnt;
-
-            u.intVal = num;
-            if (_buffered) {
-                __WRITING__(f)
-            }
-            __WRITEBYTES__(cnt, f, u.bytes, 4, _buffered, __INST(handleType));
-
-            if (cnt == 4) {
-                if (__isSmallInteger(__INST(position))) {
-                    INT np = __intVal(__INST(position)) + 4;
-                    OBJ t;
-
-                    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                } else {
-                    __INST(position) = nil; /* i.e. do not know */
-                }
-                RETURN ( self );
-            }
-            __INST(position) = nil; /* i.e. do not know */
-            error = __mkSmallInteger(__threadErrno);
-        }
+	if (((fp = __INST(handle)) != nil)
+	 && (__INST(mode) != @symbol(readonly))
+	) {
+	    int _buffered = (__INST(buffered) == true);
+	    FILEPOINTER f = __FILEVal(fp);
+	    int cnt;
+
+	    u.intVal = num;
+	    if (_buffered) {
+		__WRITING__(f)
+	    }
+	    __WRITEBYTES__(cnt, f, u.bytes, 4, _buffered, __INST(handleType));
+
+	    if (cnt == 4) {
+		if (__isSmallInteger(__INST(position))) {
+		    INT np = __intVal(__INST(position)) + 4;
+		    OBJ t;
+
+		    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+		} else {
+		    __INST(position) = nil; /* i.e. do not know */
+		}
+		RETURN ( self );
+	    }
+	    __INST(position) = nil; /* i.e. do not know */
+	    error = __mkSmallInteger(__threadErrno);
+	}
     }
 badArg: ;
 %}.
@@ -4721,13 +4721,13 @@
     self nextPutUtf16Bytes:aCharacter MSB:true
 
     "
-        (FileStream newTemporary
-            nextPutUtf16:$B;
-            nextPutUtf16:$Ä;
-            nextPutUtf16:(Character codePoint:16r10CCCC);
-            reset;
-            binary;
-            contents)
+	(FileStream newTemporary
+	    nextPutUtf16:$B;
+	    nextPutUtf16:$Ä;
+	    nextPutUtf16:(Character codePoint:16r10CCCC);
+	    reset;
+	    binary;
+	    contents)
     "
 !
 
@@ -4752,8 +4752,8 @@
 
 printOn:aStream
     aStream
-        nextPutAll:self className;
-        nextPut:$(.
+	nextPutAll:self className;
+	nextPut:$(.
     handleType printOn:aStream.
     aStream nextPutAll:':('.
     handle printOn:aStream.
@@ -4773,7 +4773,7 @@
     |fp error|
 
     handle isNil ifTrue:[
-        ^ self.
+	^ self.
     ].
     fp := handle.
     "/ (didWrite==true and:[binary ~~ true and:[eolMode = #crlf]]) ifTrue: [ self breakPoint:#sr ].
@@ -4782,69 +4782,90 @@
     int rslt;
 
     if (__INST(handleType) == @symbol(socketHandle)) {
-        SOCKET sock = (SOCKET)(__FILEVal(fp));
-
-        if (@global(FileOpenTrace) == true) {
-            fprintf(stderr, "close socket [ExternalStream] %"_lx_"\n", (INT)sock);
-        }
-
-        // whether the close() will be successful or not - the handle is invalid now!
-        __INST(handle) = nil;
-        do {
+	SOCKET sock = (SOCKET)(__FILEVal(fp));
+
+	if (@global(FileOpenTrace) == true) {
+	    fprintf(stderr, "close socket [ExternalStream] %"_lx_"\n", (INT)sock);
+	}
+
+	// whether the close() will be successful or not - the handle is invalid now!
+	__INST(handle) = nil;
+	do {
 #ifdef __win32__
-            rslt = __STX_WSA_NOINT_CALL1("closesocket", closesocket, sock);
+	    rslt = __STX_WSA_NOINT_CALL1("closesocket", closesocket, sock);
 #else
-            rslt = close(sock);
+	    rslt = close(sock);
 #endif
-        } while((rslt < 0) && (__threadErrno == EINTR));
+	} while((rslt < 0) && (__threadErrno == EINTR));
     } else if ((__INST(handleType) == nil)
-               || (__INST(handleType) == @symbol(filePointer))
-               || (__INST(handleType) == @symbol(socketFilePointer))
-               || (__INST(handleType) == @symbol(pipeFilePointer)))
+	       || (__INST(handleType) == @symbol(filePointer))
+	       || (__INST(handleType) == @symbol(socketFilePointer))
+	       || (__INST(handleType) == @symbol(pipeFilePointer)))
     {
-        FILEPOINTER f = __FILEVal(fp);
-
-        if (@global(FileOpenTrace) == true) {
-            fprintf(stderr, "fclose [ExternalStream] %"_lx_"\n", (INT)f);
-        }
-        // whether the close() will be successful or not - the handle is invalid now!
-        __INST(handle) = nil;
+	FILEPOINTER f = __FILEVal(fp);
+
+	if (@global(FileOpenTrace) == true) {
+	    fprintf(stderr, "fclose [ExternalStream] %"_lx_"\n", (INT)f);
+	}
+	// whether the close() will be successful or not - the handle is invalid now!
+	__INST(handle) = nil;
 
 #ifdef __win32__
-        if (__INST(mode) != @symbol(readonly) && __INST(buffered) != false) {
-            // do a fflush() first, so that fclose() doesn't block
-            // we suspect, that EINTR causes problems in fclose()
-            do {
-                __threadErrno = 0;
-                rslt = __STX_C_CALL1("fflush", fflush, f);
-            } while((rslt < 0) && (__threadErrno == EINTR));
-        }
-        do {
-            __threadErrno = 0;
-            rslt = __STX_C_NOINT_CALL1("fclose", fclose, f);
-        } while((rslt < 0) && (__threadErrno == EINTR));
+	if (__INST(mode) != @symbol(readonly) && __INST(buffered) != false) {
+	    // do a fflush() first, so that fclose() doesn't block
+	    // we suspect, that EINTR causes problems in fclose()
+	    do {
+		__threadErrno = 0;
+		rslt = __STX_C_CALL1("fflush", fflush, f);
+	    } while((rslt < 0) && (__threadErrno == EINTR));
+	}
+	do {
+	    __threadErrno = 0;
+	    rslt = __STX_C_NOINT_CALL1("fclose", fclose, f);
+	} while((rslt < 0) && (__threadErrno == EINTR));
 #else
-        // cg: the pre Nov2014 code always did the fclose interruptable;
-        // I am not sure, if fclose is actually prepared to do this;
-        // at least when only reading, this should not block, and we
-        // should be able to do it without being interruptable.
-        // Must watch this - if it leads to blockings, change and think about it.
-        if (__INST(mode) == @symbol(readonly)) {
-            rslt = fclose(f);
-        } else {
-            __BEGIN_INTERRUPTABLE__
-            rslt = fclose(f);
-            __END_INTERRUPTABLE__
-        }
+# ifdef __osx__
+	// cg: not sure why, but on osx, I get blocked occasionally in fclose
+	// lets try this:
+	if (__INST(mode) != @symbol(readonly) && __INST(buffered) != false) {
+	    // do a fflush() first, so that fclose() doesn't block
+	    // we suspect, that EINTR causes problems in fclose()
+	    do {
+		__threadErrno = 0;
+		__BEGIN_INTERRUPTABLE__
+		rslt = fflush(f);
+		__END_INTERRUPTABLE__
+	    } while((rslt < 0) && (__threadErrno == EINTR));
+	}
+	do {
+	    __threadErrno = 0;
+	    __BEGIN_INTERRUPTABLE__
+	    rslt = fclose(f);
+	    __END_INTERRUPTABLE__
+	} while((rslt < 0) && (__threadErrno == EINTR));
+# else
+	// cg: the pre Nov2014 code always did the fclose interruptable;
+	// I am not sure, if fclose is actually prepared to do this;
+	// at least when only reading, this should not block, and we
+	// should be able to do it without being interruptable.
+	// Must watch this - if it leads to blockings, change and think about it.
+	if (__INST(mode) == @symbol(readonly)) {
+	    rslt = fclose(f);
+	} else {
+	    __BEGIN_INTERRUPTABLE__
+	    rslt = fclose(f);
+	    __END_INTERRUPTABLE__
+	}
+# endif
 #endif
     } else {
-        error = @symbol(badHandleType);
-        goto out;
+	error = @symbol(badHandleType);
+	goto out;
     }
 
     if (rslt < 0) {
-        error = __mkSmallInteger(__threadErrno);
-        goto out;
+	error = __mkSmallInteger(__threadErrno);
+	goto out;
     }
     RETURN (self);
 
@@ -4852,25 +4873,25 @@
 %}.
 
     error notNil ifTrue:[
-        error isInteger ifTrue:[
-            lastErrorNumber := error.
-            mode == #readonly ifTrue:[
-                self ioError:error.
-            ] ifFalse:[
-                self writeError:error.
-            ].
-            ^ self.
-        ].
-        self primitiveFailed:error.
-        ^ self.
+	error isInteger ifTrue:[
+	    lastErrorNumber := error.
+	    mode == #readonly ifTrue:[
+		self ioError:error.
+	    ] ifFalse:[
+		self writeError:error.
+	    ].
+	    ^ self.
+	].
+	self primitiveFailed:error.
+	^ self.
     ].
 
     "/ fallback for rel5
 
     fp := handle.
     fp notNil ifTrue:[
-        handle := nil.
-        self closeFile:fp
+	handle := nil.
+	self closeFile:fp
     ]
 !
 
@@ -4901,54 +4922,54 @@
 
     if (__isStringLike(openmode)) {
 #ifdef __win32__
-        __stxWrapApiEnterCritical();
+	__stxWrapApiEnterCritical();
 #endif
-        if (__isSmallInteger(aFileDescriptor)) {
-            fd = __intVal(aFileDescriptor);
-        }
+	if (__isSmallInteger(aFileDescriptor)) {
+	    fd = __intVal(aFileDescriptor);
+	}
 #ifdef __win32__
-        else if (__isExternalAddressLike(aFileDescriptor)) {
-            fd = _open_osfhandle((long)__externalAddressVal(aFileDescriptor), O_BINARY);
-            if (fd < 0) {
-                if (__threadErrno == 0) {
-                    // no more file descriptors
-                    __threadErrno = EMFILE;
-                }
-                error = __mkSmallInteger(__threadErrno);
-                __stxWrapApiLeaveCritical();
-                goto out;
-            }
-        }
+	else if (__isExternalAddressLike(aFileDescriptor)) {
+	    fd = _open_osfhandle((long)__externalAddressVal(aFileDescriptor), O_BINARY);
+	    if (fd < 0) {
+		if (__threadErrno == 0) {
+		    // no more file descriptors
+		    __threadErrno = EMFILE;
+		}
+		error = __mkSmallInteger(__threadErrno);
+		__stxWrapApiLeaveCritical();
+		goto out;
+	    }
+	}
 #endif
-        f = (FILEPOINTER) fdopen(fd, (char *)__stringVal(openmode));
+	f = (FILEPOINTER) fdopen(fd, (char *)__stringVal(openmode));
 #ifdef __win32__
-        __stxWrapApiLeaveCritical();
+	__stxWrapApiLeaveCritical();
 #endif
-        if (f == NULL) {
-            error =__mkSmallInteger(__threadErrno);
-        } else {
-            if (@global(FileOpenTrace) == true) {
-                fprintf(stderr, "fdopen [ExternalStream] %"_ld_" (%"_lx_") -> %"_lx_"\n", (INT)fd, (INT)fd, (INT)f);
-            }
-
-            fp = __MKFILEPOINTER(f); __INST(handle) = fp; __STORE(self, fp);
-        }
+	if (f == NULL) {
+	    error =__mkSmallInteger(__threadErrno);
+	} else {
+	    if (@global(FileOpenTrace) == true) {
+		fprintf(stderr, "fdopen [ExternalStream] %"_ld_" (%"_lx_") -> %"_lx_"\n", (INT)fd, (INT)fd, (INT)f);
+	    }
+
+	    fp = __MKFILEPOINTER(f); __INST(handle) = fp; __STORE(self, fp);
+	}
     }
 out:;
 %}.
     error notNil ifTrue:[
-        "
-         the open failed for some reason ...
-        "
-        OperatingSystem closeFd:aFileDescriptor.
-        lastErrorNumber := error.
-        position := nil.
-        ^ self openError:error
+	"
+	 the open failed for some reason ...
+	"
+	OperatingSystem closeFd:aFileDescriptor.
+	lastErrorNumber := error.
+	position := nil.
+	^ self openError:error
     ].
 
     position := 0.
     buffered isNil ifTrue:[
-        buffered := true.       "default is buffered"
+	buffered := true.       "default is buffered"
     ].
     handleType := handleTypeSymbol.
     self registerForFinalization.
@@ -4960,8 +4981,8 @@
     |fd dupFd|
 
     fd := self fileHandle.
-    fd isNil ifTrue:[   
-        ^ self errorNotOpen.
+    fd isNil ifTrue:[
+	^ self errorNotOpen.
     ].
     dupFd := OperatingSystem dup:fd.
     self setFileHandle:dupFd mode:self fopenMode.
@@ -5205,18 +5226,18 @@
     STObject handle = self.instVarAt(I_handle);
 
     if (handle != STObject.Nil) {
-        STObject next;
-
-        if (self.instVarAt(I_binary) == STObject.True) {
-            next = handle.nextByte();
-        } else {
-            next = handle.nextChar();
-        }
-        if (next != STObject.EOF) {
-            self.instVarAt_put(I_position, STObject.Nil);
-            return __c__._RETURN( next );
-        }
-        self.instVarAt_put(I_hitEOF, STObject.True);
+	STObject next;
+
+	if (self.instVarAt(I_binary) == STObject.True) {
+	    next = handle.nextByte();
+	} else {
+	    next = handle.nextChar();
+	}
+	if (next != STObject.EOF) {
+	    self.instVarAt_put(I_position, STObject.Nil);
+	    return __c__._RETURN( next );
+	}
+	self.instVarAt_put(I_hitEOF, STObject.True);
     }
 #else
     FILEPOINTER f;
@@ -5230,63 +5251,63 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-            && (__INST(mode) != @symbol(writeonly))
-        ) {
-            f = __FILEVal(fp);
-
-            _buffered = (__INST(buffered) == true);
-            if (_buffered) {
-                __READING__(f)
-            }
-            __READBYTE__(ret, f, &ch, _buffered, __INST(handleType));
-
-            if (ret > 0) {
-                pos = __INST(position);
-                if (__isSmallInteger(pos)) {
-                    OBJ t;
-
-                    t = __MKINT(__intVal(pos) + 1); __INST(position) = t; __STORE(self, t);
-                } else {
-                    __INST(position) = nil; /* i.e. do not know */
-                }
-                if (__INST(binary) == true) {
-                    RETURN ( __mkSmallInteger(ch) );
-                }
-                RETURN ( __MKCHARACTER(ch) );
-            }
-
-            __INST(position) = nil;
-            if (ret < 0) {
-                error = __mkSmallInteger(__threadErrno);
-            } else /* ret == 0 */ {
-                __INST(hitEOF) = true;
-            }
-        }
+	if (((fp = __INST(handle)) != nil)
+	    && (__INST(mode) != @symbol(writeonly))
+	) {
+	    f = __FILEVal(fp);
+
+	    _buffered = (__INST(buffered) == true);
+	    if (_buffered) {
+		__READING__(f)
+	    }
+	    __READBYTE__(ret, f, &ch, _buffered, __INST(handleType));
+
+	    if (ret > 0) {
+		pos = __INST(position);
+		if (__isSmallInteger(pos)) {
+		    OBJ t;
+
+		    t = __MKINT(__intVal(pos) + 1); __INST(position) = t; __STORE(self, t);
+		} else {
+		    __INST(position) = nil; /* i.e. do not know */
+		}
+		if (__INST(binary) == true) {
+		    RETURN ( __mkSmallInteger(ch) );
+		}
+		RETURN ( __MKCHARACTER(ch) );
+	    }
+
+	    __INST(position) = nil;
+	    if (ret < 0) {
+		error = __mkSmallInteger(__threadErrno);
+	    } else /* ret == 0 */ {
+		__INST(hitEOF) = true;
+	    }
+	}
     }
 #endif /* not SCHTEAM */
 %}.
     hitEOF ifTrue:[^ self pastEndRead].
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        ^ self readError:error
+	lastErrorNumber := error.
+	^ self readError:error
     ].
     handle isNil ifTrue:[^ self errorNotOpen].
     (mode == #writeonly) ifTrue:[^ self errorWriteOnly].
 
     readAhead notNil ifTrue:[
-        c := readAhead.
-        readAhead := nil.
-        ^ c.
+	c := readAhead.
+	readAhead := nil.
+	^ c.
     ].
 
     "unknown handleType - future"
     c := self nextByteFromFile:handle.
     c isNil ifTrue:[
-        ^ self pastEndRead.
+	^ self pastEndRead.
     ].
     binary ifTrue:[
-        ^ c
+	^ c
     ].
     ^ Character value:c
 !
@@ -5301,9 +5322,9 @@
     nRead := self nextBytes:count into:coll startingAt:1.
 
     nRead ~~ count ifTrue:[
-        "/ for readStream protocol compatibility,
-        "/ we must raise an exception here.
-        ^ self pastEndRead
+	"/ for readStream protocol compatibility,
+	"/ we must raise an exception here.
+	^ self pastEndRead
     ].
     ^ coll
 
@@ -5329,62 +5350,62 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-            && (__INST(mode) != @symbol(writeonly))
-        ) {
-            f = __FILEVal(fp);
-
-            _buffered = (__INST(buffered) == true);
-            if (_buffered) {
-                __READING__(f)
-            }
-            __READBYTE__(ret, f, &ch, _buffered, __INST(handleType));
-
-            if (ret > 0) {
-                pos = __INST(position);
-                if (__isSmallInteger(pos)) {
-                    OBJ t;
-
-                    t = __MKINT(__intVal(pos) + 1); __INST(position) = t; __STORE(self, t);
-                } else {
-                    __INST(position) = nil; /* i.e. do not know */
-                }
-                if (__INST(binary) == true) {
-                    RETURN ( __mkSmallInteger(ch) );
-                }
-                RETURN ( __MKCHARACTER(ch) );
-            }
-
-            __INST(position) = nil;
-            if (ret < 0) {
-                error = __mkSmallInteger(__threadErrno);
-            } else /* ret == 0 */ {
-                __INST(hitEOF) = true;
-            }
-        }
+	if (((fp = __INST(handle)) != nil)
+	    && (__INST(mode) != @symbol(writeonly))
+	) {
+	    f = __FILEVal(fp);
+
+	    _buffered = (__INST(buffered) == true);
+	    if (_buffered) {
+		__READING__(f)
+	    }
+	    __READBYTE__(ret, f, &ch, _buffered, __INST(handleType));
+
+	    if (ret > 0) {
+		pos = __INST(position);
+		if (__isSmallInteger(pos)) {
+		    OBJ t;
+
+		    t = __MKINT(__intVal(pos) + 1); __INST(position) = t; __STORE(self, t);
+		} else {
+		    __INST(position) = nil; /* i.e. do not know */
+		}
+		if (__INST(binary) == true) {
+		    RETURN ( __mkSmallInteger(ch) );
+		}
+		RETURN ( __MKCHARACTER(ch) );
+	    }
+
+	    __INST(position) = nil;
+	    if (ret < 0) {
+		error = __mkSmallInteger(__threadErrno);
+	    } else /* ret == 0 */ {
+		__INST(hitEOF) = true;
+	    }
+	}
     }
 %}.
     hitEOF ifTrue:[^ nil].
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        ^ self readError:error.
+	lastErrorNumber := error.
+	^ self readError:error.
     ].
     handle isNil ifTrue:[^ self errorNotOpen].
     (mode == #writeonly) ifTrue:[^ self errorWriteOnly].
 
     readAhead notNil ifTrue:[
-        c := readAhead.
-        readAhead := nil.
-        ^ c.
+	c := readAhead.
+	readAhead := nil.
+	^ c.
     ].
 
     "unknown handleType - future"
     c := self nextByteFromFile:handle.
     c isNil ifTrue:[
-        ^ nil.
+	^ nil.
     ].
     binary == true ifTrue:[
-        ^ c
+	^ c
     ].
     ^ Character value:c
 !
@@ -5404,11 +5425,11 @@
     OBJ ra;
 
     if ((ra = __INST(readAhead)) != nil) {
-        if (__INST(binary) == true) {
-            RETURN ( ra );
-        }
-        c = __intVal(ra);
-        RETURN ( __MKCHARACTER(c) );
+	if (__INST(binary) == true) {
+	    RETURN ( ra );
+	}
+	c = __intVal(ra);
+	RETURN ( __MKCHARACTER(c) );
     }
 
     __INST(lastErrorNumber) = nil;
@@ -5418,45 +5439,45 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-            && (__INST(mode) != @symbol(writeonly))
-        ) {
-            f = __FILEVal(fp);
-            _buffered = (__INST(buffered) == true);
-            if (_buffered) {
-                __READING__(f)
-            }
-            __READBYTE__(ret, f, &c, _buffered, __INST(handleType));
-
-            if (ret > 0) {
-                __UNGETC__(c, f, _buffered);
-
-                if (__INST(binary) == true) {
-                    RETURN ( __mkSmallInteger(c) );
-                }
-                RETURN ( __MKCHARACTER(c) );
-            }
-            if (ret < 0) {
-                error = __mkSmallInteger(__threadErrno);
-            } else /* ret == 0 */ {
-                __INST(hitEOF) = true;
-            }
-        }
+	if (((fp = __INST(handle)) != nil)
+	    && (__INST(mode) != @symbol(writeonly))
+	) {
+	    f = __FILEVal(fp);
+	    _buffered = (__INST(buffered) == true);
+	    if (_buffered) {
+		__READING__(f)
+	    }
+	    __READBYTE__(ret, f, &c, _buffered, __INST(handleType));
+
+	    if (ret > 0) {
+		__UNGETC__(c, f, _buffered);
+
+		if (__INST(binary) == true) {
+		    RETURN ( __mkSmallInteger(c) );
+		}
+		RETURN ( __MKCHARACTER(c) );
+	    }
+	    if (ret < 0) {
+		error = __mkSmallInteger(__threadErrno);
+	    } else /* ret == 0 */ {
+		__INST(hitEOF) = true;
+	    }
+	}
     }
 %}.
     hitEOF ifTrue:[^ self pastEndRead].
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        ^ self readError:error.
+	lastErrorNumber := error.
+	^ self readError:error.
     ].
     handle isNil ifTrue:[^ self errorNotOpen].
     (mode == #writeonly) ifTrue:[^ self errorWriteOnly].
 
     readAhead isNil ifTrue:[
-        readAhead := self nextOrNil.
-        readAhead isNil ifTrue:[
-            ^ self pastEndRead.
-        ].
+	readAhead := self nextOrNil.
+	readAhead isNil ifTrue:[
+	    ^ self pastEndRead.
+	].
     ].
     ^ readAhead
 !
@@ -5476,11 +5497,11 @@
     OBJ ra;
 
     if ((ra = __INST(readAhead)) != nil) {
-        if (__INST(binary) == true) {
-            RETURN ( ra );
-        }
-        c = __intVal(ra);
-        RETURN ( __MKCHARACTER(c) );
+	if (__INST(binary) == true) {
+	    RETURN ( ra );
+	}
+	c = __intVal(ra);
+	RETURN ( __MKCHARACTER(c) );
     }
 
     __INST(lastErrorNumber) = nil;
@@ -5490,42 +5511,42 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if (((fp = __INST(handle)) != nil)
-            && (__INST(mode) != @symbol(writeonly))
-        ) {
-            f = __FILEVal(fp);
-            _buffered = (__INST(buffered) == true);
-            if (_buffered) {
-                __READING__(f)
-            }
-            __READBYTE__(ret, f, &c, _buffered, __INST(handleType));
-
-            if (ret > 0) {
-                __UNGETC__(c, f, _buffered);
-
-                if (__INST(binary) == true) {
-                    RETURN ( __mkSmallInteger(c) );
-                }
-                RETURN ( __MKCHARACTER(c) );
-            }
-            if (ret < 0) {
-                error = __mkSmallInteger(__threadErrno);
-            } else /* ret == 0 */ {
-                __INST(hitEOF) = true;
-            }
-        }
+	if (((fp = __INST(handle)) != nil)
+	    && (__INST(mode) != @symbol(writeonly))
+	) {
+	    f = __FILEVal(fp);
+	    _buffered = (__INST(buffered) == true);
+	    if (_buffered) {
+		__READING__(f)
+	    }
+	    __READBYTE__(ret, f, &c, _buffered, __INST(handleType));
+
+	    if (ret > 0) {
+		__UNGETC__(c, f, _buffered);
+
+		if (__INST(binary) == true) {
+		    RETURN ( __mkSmallInteger(c) );
+		}
+		RETURN ( __MKCHARACTER(c) );
+	    }
+	    if (ret < 0) {
+		error = __mkSmallInteger(__threadErrno);
+	    } else /* ret == 0 */ {
+		__INST(hitEOF) = true;
+	    }
+	}
     }
 %}.
     hitEOF ifTrue:[^ nil].
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        ^ self readError:error.
+	lastErrorNumber := error.
+	^ self readError:error.
     ].
     handle isNil ifTrue:[^ self errorNotOpen].
     (mode == #writeonly) ifTrue:[^ self errorWriteOnly].
 
     readAhead isNil ifTrue:[
-        readAhead := self nextOrNil.
+	readAhead := self nextOrNil.
     ].
     ^ readAhead
 !
@@ -5543,35 +5564,35 @@
     chunkSize := 4096.
     byteCount := 0.
     [self atEnd] whileFalse:[
-        |chunk cnt|
-
-        chunk := self contentsSpecies uninitializedNew:chunkSize.
-        cnt := self nextBytes:chunkSize into:chunk startingAt:1.
-        cnt ~~ 0 ifTrue:[
-            chunks isNil ifTrue:[
-                (cnt < chunkSize and:[self atEnd]) ifTrue:[
-                    "all data is in a single chunk, so we are done"
-                    ^ chunk copyFrom:1 to:cnt.
-                ].
-                chunks := OrderedCollection new.
-                sizes := OrderedCollection new.
-            ].
-            chunks add:chunk.
-            sizes add:cnt.
-            byteCount := byteCount + cnt
-        ]
+	|chunk cnt|
+
+	chunk := self contentsSpecies uninitializedNew:chunkSize.
+	cnt := self nextBytes:chunkSize into:chunk startingAt:1.
+	cnt ~~ 0 ifTrue:[
+	    chunks isNil ifTrue:[
+		(cnt < chunkSize and:[self atEnd]) ifTrue:[
+		    "all data is in a single chunk, so we are done"
+		    ^ chunk copyFrom:1 to:cnt.
+		].
+		chunks := OrderedCollection new.
+		sizes := OrderedCollection new.
+	    ].
+	    chunks add:chunk.
+	    sizes add:cnt.
+	    byteCount := byteCount + cnt
+	]
     ].
 
     "now, create one big array"
     data := self contentsSpecies uninitializedNew:byteCount.
     offset := 1.
     1 to:chunks size do:[:index |
-        |chunk cnt|
-
-        chunk := chunks at:index.
-        cnt := sizes at:index.
-        data replaceFrom:offset to:(offset + cnt - 1) with:chunk startingAt:1.
-        offset := offset + cnt
+	|chunk cnt|
+
+	chunk := chunks at:index.
+	cnt := sizes at:index.
+	data replaceFrom:offset to:(offset + cnt - 1) with:chunk startingAt:1.
+	offset := offset + cnt
     ].
     ^ data
 
@@ -5581,7 +5602,7 @@
      '/proc/self/stat' asFilename readStream upToEnd
 
      self assert:('smalltalk.rc' asFilename readStream upToEnd size)
-                  =  ('smalltalk.rc' asFilename readStream size)
+		  =  ('smalltalk.rc' asFilename readStream size)
     "
 ! !
 
@@ -5619,11 +5640,11 @@
     char c;
 
     if (__INST(hitEOF) == true) {
-        RETURN (true);
+	RETURN (true);
     }
     lim = __INST(readLimit);
     if (lim != nil && __signedLongIntVal(__INST(position)) >= __signedLongIntVal(lim)) {
-        RETURN (true);
+	RETURN (true);
     }
 
     __INST(lastErrorNumber) = nil;
@@ -5633,46 +5654,46 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        if ((fp = __INST(handle)) != nil) {
-            int _buffered = (__INST(buffered) == true);
-            int ret;
-            FILEPOINTER f = __FILEVal(fp);
-
-            if (_buffered) {
-                __READING__(f);
-            } else if (__INST(readAhead) != nil) {
-                RETURN (false);
-            }
-
-            /*
-             * read ahead ...
-             */
-            do {
+	if ((fp = __INST(handle)) != nil) {
+	    int _buffered = (__INST(buffered) == true);
+	    int ret;
+	    FILEPOINTER f = __FILEVal(fp);
+
+	    if (_buffered) {
+		__READING__(f);
+	    } else if (__INST(readAhead) != nil) {
+		RETURN (false);
+	    }
+
+	    /*
+	     * read ahead ...
+	     */
+	    do {
 #ifdef __win32__
-                __READBYTE__(ret, f, &c, _buffered, __INST(handleType));
+		__READBYTE__(ret, f, &c, _buffered, __INST(handleType));
 #else /* not __win32__ */
-                __BEGIN_INTERRUPTABLE__
-                __READBYTE__(ret, f, &c, _buffered, __INST(handleType));
-                __END_INTERRUPTABLE__
+		__BEGIN_INTERRUPTABLE__
+		__READBYTE__(ret, f, &c, _buffered, __INST(handleType));
+		__END_INTERRUPTABLE__
 #endif /* not __win32__ */
-            } while ((ret < 0) && (__threadErrno == EINTR));
-            if (ret > 0) {
-                __UNGETC__(c&0xff, f, _buffered);
-                RETURN (false);
-            }
-            if (ret == 0) {
-                __INST(hitEOF) = true;
-                RETURN (true);
-            }
-            /* ret < 0 -> error */
-            __INST(lastErrorNumber) = __mkSmallInteger(__threadErrno);
-        }
-        // we do not raise an error here - the next read operation will raise the error.
-        RETURN(false);
+	    } while ((ret < 0) && (__threadErrno == EINTR));
+	    if (ret > 0) {
+		__UNGETC__(c&0xff, f, _buffered);
+		RETURN (false);
+	    }
+	    if (ret == 0) {
+		__INST(hitEOF) = true;
+		RETURN (true);
+	    }
+	    /* ret < 0 -> error */
+	    __INST(lastErrorNumber) = __mkSmallInteger(__threadErrno);
+	}
+	// we do not raise an error here - the next read operation will raise the error.
+	RETURN(false);
     }
 %}.
 
-    "/ we come here if the handle type is unknown 
+    "/ we come here if the handle type is unknown
     "/ migration support
     ^ self atEndFile:handle
 
@@ -5742,19 +5763,19 @@
     |available|
 
     handle isNil ifTrue:[
-        ^ self errorNotOpen
+	^ self errorNotOpen
     ].
     mode == #writeonly ifTrue:[
-        ^ self errorWriteOnly
+	^ self errorWriteOnly
     ].
     available := OperatingSystem numAvailableForReadOn:self fileHandle.
     readAhead notNil ifTrue:[
-        available := available + 1
+	available := available + 1
     ].
     ^ available.
 
     "
-        '/etc/hosts' asFilename readStream numAvailableForRead
+	'/etc/hosts' asFilename readStream numAvailableForRead
     "
 !
 
@@ -5787,19 +5808,19 @@
     wasBlocked := OperatingSystem blockInterrupts.
     inputSema := Semaphore name:'readWait'.
     [
-        timeoutOrNil notNil ifTrue:[
-            Processor signal:inputSema afterMilliseconds:timeoutOrNil.
-        ].
-        Processor signal:inputSema onInput:fd.
-        Processor activeProcess state:#ioWait.
-        inputSema wait.
-        hasTimedout := timeoutOrNil notNil and:[(OperatingSystem readCheck:fd) not].
+	timeoutOrNil notNil ifTrue:[
+	    Processor signal:inputSema afterMilliseconds:timeoutOrNil.
+	].
+	Processor signal:inputSema onInput:fd.
+	Processor activeProcess state:#ioWait.
+	inputSema wait.
+	hasTimedout := timeoutOrNil notNil and:[(OperatingSystem readCheck:fd) not].
     ] ifCurtailed:[
-        Processor disableSemaphore:inputSema.
-        wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+	Processor disableSemaphore:inputSema.
+	wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ].
     timeoutOrNil notNil ifTrue:[
-        Processor disableSemaphore:inputSema.
+	Processor disableSemaphore:inputSema.
     ].
     wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ^ hasTimedout
@@ -5817,7 +5838,7 @@
     |fd sema hasTimedout wasBlocked|
 
     handle isNil ifTrue:[
-        ^ self errorNotOpen
+	^ self errorNotOpen
     ].
 
     fd := self fileHandle.
@@ -5826,20 +5847,20 @@
     wasBlocked := OperatingSystem blockInterrupts.
     sema := Semaphore name:'readWriteWait'.
     [
-        timeout notNil ifTrue:[
-            Processor signal:sema afterMilliseconds:timeout
-        ].
-        Processor signal:sema onOutput:fd.
-        Processor signal:sema onInput:fd.
-        Processor activeProcess state:#ioWait.
-        sema wait.
-        hasTimedout := timeout notNil and:[(OperatingSystem readWriteCheck:fd) not].
+	timeout notNil ifTrue:[
+	    Processor signal:sema afterMilliseconds:timeout
+	].
+	Processor signal:sema onOutput:fd.
+	Processor signal:sema onInput:fd.
+	Processor activeProcess state:#ioWait.
+	sema wait.
+	hasTimedout := timeout notNil and:[(OperatingSystem readWriteCheck:fd) not].
     ] ifCurtailed:[
-        Processor disableSemaphore:sema.
-        wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+	Processor disableSemaphore:sema.
+	wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ].
     timeout notNil ifTrue:[
-        Processor disableSemaphore:sema.
+	Processor disableSemaphore:sema.
     ].
     wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ^ hasTimedout
@@ -5857,7 +5878,7 @@
     |fd sema hasTimedout wasBlocked|
 
     handle isNil ifTrue:[
-        ^ self errorNotOpen
+	^ self errorNotOpen
     ].
 
     fd := self fileHandle.
@@ -5866,20 +5887,20 @@
     wasBlocked := OperatingSystem blockInterrupts.
     sema := Semaphore name:'writeExceptionWait'.
     [
-        timeout notNil ifTrue:[
-            Processor signal:sema afterMilliseconds:timeout
-        ].
-        Processor signal:sema onOutput:fd.
-        Processor signal:sema onException:fd.
-        Processor activeProcess state:#ioWait.
-        sema wait.
-        hasTimedout := timeout notNil and:[(OperatingSystem readWriteCheck:fd) not].
+	timeout notNil ifTrue:[
+	    Processor signal:sema afterMilliseconds:timeout
+	].
+	Processor signal:sema onOutput:fd.
+	Processor signal:sema onException:fd.
+	Processor activeProcess state:#ioWait.
+	sema wait.
+	hasTimedout := timeout notNil and:[(OperatingSystem readWriteCheck:fd) not].
     ] ifCurtailed:[
-        Processor disableSemaphore:sema.
-        wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+	Processor disableSemaphore:sema.
+	wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ].
     timeout notNil ifTrue:[
-        Processor disableSemaphore:sema.
+	Processor disableSemaphore:sema.
     ].
     wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ^ hasTimedout
@@ -5897,10 +5918,10 @@
     |fd outputSema hasTimedout wasBlocked|
 
     handle isNil ifTrue:[
-        ^ self errorNotOpen
+	^ self errorNotOpen
     ].
     mode == #readonly ifTrue:[
-        ^ self errorReadOnly
+	^ self errorReadOnly
     ].
 
     fd := self fileHandle.
@@ -5909,19 +5930,19 @@
     wasBlocked := OperatingSystem blockInterrupts.
     outputSema := Semaphore name:'writeWait'.
     [
-        timeout notNil ifTrue:[
-            Processor signal:outputSema afterMilliseconds:timeout
-        ].
-        Processor signal:outputSema onOutput:fd.
-        Processor activeProcess state:#ioWait.
-        outputSema wait.
-        hasTimedout := timeout notNil and:[(OperatingSystem writeCheck:fd) not].
+	timeout notNil ifTrue:[
+	    Processor signal:outputSema afterMilliseconds:timeout
+	].
+	Processor signal:outputSema onOutput:fd.
+	Processor activeProcess state:#ioWait.
+	outputSema wait.
+	hasTimedout := timeout notNil and:[(OperatingSystem writeCheck:fd) not].
     ] ifCurtailed:[
-        Processor disableSemaphore:outputSema.
-        wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+	Processor disableSemaphore:outputSema.
+	wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ].
     timeout notNil ifTrue:[
-        Processor disableSemaphore:outputSema.
+	Processor disableSemaphore:outputSema.
     ].
     wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ^ hasTimedout
@@ -5941,57 +5962,57 @@
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        OBJ fp;
-
-        __INST(lastErrorNumber) = nil;
-        if (((fp = __INST(handle)) != nil)
-         && (__INST(mode) != @symbol(readonly))
-         && (__INST(binary) != true)
-        ) {
-            FILEPOINTER f = __FILEVal(fp);
-            int _buffered = (__INST(buffered) == true);
-            int len, cnt;
-            char *cp;
-
-            if (_buffered) {
-                __WRITING__(f)
-            }
-            {
-                OBJ mode = __INST(eolMode);
-
-                if (mode == @symbol(cr)) {
-                    cp = "\r"; len = 1;
-                } else if (mode == @symbol(crlf)) {
-                    cp = "\r\n"; len = 2;
-                } else if (mode == @symbol(eot)) {
-                    cp = "\004"; len = 1;
-                } else if (mode == @symbol(etx)) {
-                    cp = "\003"; len = 1;
-                } else {
-                    cp = "\n"; len = 1;
-                }
-            }
+	OBJ fp;
+
+	__INST(lastErrorNumber) = nil;
+	if (((fp = __INST(handle)) != nil)
+	 && (__INST(mode) != @symbol(readonly))
+	 && (__INST(binary) != true)
+	) {
+	    FILEPOINTER f = __FILEVal(fp);
+	    int _buffered = (__INST(buffered) == true);
+	    int len, cnt;
+	    char *cp;
+
+	    if (_buffered) {
+		__WRITING__(f)
+	    }
+	    {
+		OBJ mode = __INST(eolMode);
+
+		if (mode == @symbol(cr)) {
+		    cp = "\r"; len = 1;
+		} else if (mode == @symbol(crlf)) {
+		    cp = "\r\n"; len = 2;
+		} else if (mode == @symbol(eot)) {
+		    cp = "\004"; len = 1;
+		} else if (mode == @symbol(etx)) {
+		    cp = "\003"; len = 1;
+		} else {
+		    cp = "\n"; len = 1;
+		}
+	    }
 #ifdef __win32__
-            if ((f == __win32_stdout()) || (f == __win32_stderr())) {
-                cnt = __win32_fwrite(cp, 1, len, f);
-            } else
+	    if ((f == __win32_stdout()) || (f == __win32_stderr())) {
+		cnt = __win32_fwrite(cp, 1, len, f);
+	    } else
 #endif
-            {
-                __WRITEBYTES__(cnt, f, cp, len, _buffered, __INST(handleType));
-            }
-            if (cnt == len) {
-                if (__isSmallInteger(__INST(position))) {
-                    INT np = __intVal(__INST(position)) + len;
-                    OBJ t;
-
-                    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                } else {
-                    __INST(position) = nil; /* i.e: don't know */
-                }
-                RETURN ( self );
-            }
-            __INST(lastErrorNumber) = __mkSmallInteger(__threadErrno);
-        }
+	    {
+		__WRITEBYTES__(cnt, f, cp, len, _buffered, __INST(handleType));
+	    }
+	    if (cnt == len) {
+		if (__isSmallInteger(__INST(position))) {
+		    INT np = __intVal(__INST(position)) + len;
+		    OBJ t;
+
+		    t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+		} else {
+		    __INST(position) = nil; /* i.e: don't know */
+		}
+		RETURN ( self );
+	    }
+	    __INST(lastErrorNumber) = __mkSmallInteger(__threadErrno);
+	}
     }
 %}.
     lastErrorNumber notNil ifTrue:[self writeError. ^ self].
@@ -6000,11 +6021,11 @@
     binary ifTrue:[self errorBinary. ^ self].
 
     (eolMode == #cr) ifTrue:[
-        self nextPut:(Character return).
-        ^ self
+	self nextPut:(Character return).
+	^ self
     ].
     (eolMode == #crlf) ifTrue:[
-        self nextPut:(Character return).
+	self nextPut:(Character return).
     ].
     self nextPut:(Character nl).
     ^ self
@@ -6060,9 +6081,9 @@
 
     if ((handle != STObject.Nil)
      && (aCharacter.isSTCharacter())) {
-        handle.writeChar( aCharacter );
-        self.instVarAt_put(I_position, STObject.Nil);
-        return __c__._RETURN_self();
+	handle.writeChar( aCharacter );
+	self.instVarAt_put(I_position, STObject.Nil);
+	return __c__._RETURN_self();
     }
 #else
     __INST(lastErrorNumber) = nil;
@@ -6071,109 +6092,109 @@
      || (__INST(handleType) == @symbol(socketFilePointer))
      || (__INST(handleType) == @symbol(socketHandle))
      || (__INST(handleType) == @symbol(pipeFilePointer))) {
-        OBJ fp;
-
-        if (((fp = __INST(handle)) != nil)
-         && (__INST(mode) != @symbol(readonly))
-        ) {
-            FILEPOINTER f = __FILEVal(fp);
-            int _buffered = (__INST(buffered) == true);
-            int cnt;
-            char buff[2];
-            int nBytes = 1;
-
-            if (__INST(binary) != true) {
-                if (__isCharacter(aCharacter)) {
-                    unsigned int codePoint = __intVal(__characterVal(aCharacter));
-                    if (codePoint <= 0xFF) {
-                        unsigned char c = codePoint;
-                        buff[0] = c; nBytes = 1;
-
-                        if (c == '\n') {
-                            OBJ mode = __INST(eolMode);
-                            if (mode == @symbol(nl)) {
-                                // no EOL translation
-                            } else if (mode == nil) {
-                                // no EOL translation
-                            } else if (mode == @symbol(cr)) {
-                                buff[0] = '\r';
-                            } else if (mode == @symbol(eot)) {
-                                buff[0] = '\004';
-                            } else if (mode == @symbol(etx)) {
-                                buff[0] = '\003';
-                            } else if (mode == @symbol(crlf)) {
-                                buff[0] = '\r';
-                                buff[1] = '\n';
-                                nBytes = 2;
-                            }
-                        }
+	OBJ fp;
+
+	if (((fp = __INST(handle)) != nil)
+	 && (__INST(mode) != @symbol(readonly))
+	) {
+	    FILEPOINTER f = __FILEVal(fp);
+	    int _buffered = (__INST(buffered) == true);
+	    int cnt;
+	    char buff[2];
+	    int nBytes = 1;
+
+	    if (__INST(binary) != true) {
+		if (__isCharacter(aCharacter)) {
+		    unsigned int codePoint = __intVal(__characterVal(aCharacter));
+		    if (codePoint <= 0xFF) {
+			unsigned char c = codePoint;
+			buff[0] = c; nBytes = 1;
+
+			if (c == '\n') {
+			    OBJ mode = __INST(eolMode);
+			    if (mode == @symbol(nl)) {
+				// no EOL translation
+			    } else if (mode == nil) {
+				// no EOL translation
+			    } else if (mode == @symbol(cr)) {
+				buff[0] = '\r';
+			    } else if (mode == @symbol(eot)) {
+				buff[0] = '\004';
+			    } else if (mode == @symbol(etx)) {
+				buff[0] = '\003';
+			    } else if (mode == @symbol(crlf)) {
+				buff[0] = '\r';
+				buff[1] = '\n';
+				nBytes = 2;
+			    }
+			}
     doWrite:
-                        if (! f) {
-                            fprintf(stderr, "oops - fileHandle is NULL in nextPut:\n");
-                            __INST(handle) = nil;
-                            goto out;
-                        }
-
-                        if (_buffered) {
-                            __WRITING__(f)
-                        }
+			if (! f) {
+			    fprintf(stderr, "oops - fileHandle is NULL in nextPut:\n");
+			    __INST(handle) = nil;
+			    goto out;
+			}
+
+			if (_buffered) {
+			    __WRITING__(f)
+			}
 # ifdef __win32__
-                        if ((f == __win32_stdout()) || (f == __win32_stderr())) {
-                            cnt = __win32_fwrite(buff, 1, nBytes, f);
-                        } else
+			if ((f == __win32_stdout()) || (f == __win32_stderr())) {
+			    cnt = __win32_fwrite(buff, 1, nBytes, f);
+			} else
 # endif
-                        {
-                            __WRITEBYTES__(cnt, f, buff, nBytes, _buffered, __INST(handleType));
-                        }
-                        if (cnt == nBytes) {
-                            if (__isSmallInteger(__INST(position))) {
-                                INT np = __intVal(__INST(position)) + nBytes;
-                                OBJ t;
-
-                                t = __MKINT(np); __INST(position) = t; __STORE(self, t);
-                            } else {
-                                __INST(position) = nil; /* i.e. do not know */
-                            }
-                            RETURN ( self );
-                        }
-                        error = __mkSmallInteger(__threadErrno);
-                    }
-                }
-            } else {
-                if (__isSmallInteger(aCharacter)) {
-                    unsigned char c = __intVal(aCharacter);
-                    buff[0] = c; nBytes = 1;
-                    goto doWrite;
-                }
-            }
-        }
+			{
+			    __WRITEBYTES__(cnt, f, buff, nBytes, _buffered, __INST(handleType));
+			}
+			if (cnt == nBytes) {
+			    if (__isSmallInteger(__INST(position))) {
+				INT np = __intVal(__INST(position)) + nBytes;
+				OBJ t;
+
+				t = __MKINT(np); __INST(position) = t; __STORE(self, t);
+			    } else {
+				__INST(position) = nil; /* i.e. do not know */
+			    }
+			    RETURN ( self );
+			}
+			error = __mkSmallInteger(__threadErrno);
+		    }
+		}
+	    } else {
+		if (__isSmallInteger(aCharacter)) {
+		    unsigned char c = __intVal(aCharacter);
+		    buff[0] = c; nBytes = 1;
+		    goto doWrite;
+		}
+	    }
+	}
     }
 out: ;
 #endif /* not SCHTEAM */
 %}.
     error notNil ifTrue:[
-        lastErrorNumber := error.
-        self writeError:error.
-        ^ self
+	lastErrorNumber := error.
+	self writeError:error.
+	^ self
     ].
     handle isNil ifTrue:[self errorNotOpen. ^ self].
     (mode == #readonly) ifTrue:[self errorReadOnly. ^ self].
     binary == true ifTrue:[
-        aCharacter isInteger ifFalse:[
-            self argumentMustBeInteger.
-            ^ self.
-        ].
+	aCharacter isInteger ifFalse:[
+	    self argumentMustBeInteger.
+	    ^ self.
+	].
     ] ifFalse:[
-        (aCharacter isCharacter not
-         or:[aCharacter codePoint > 16rFF]) ifTrue:[
-            self argumentMustBeCharacter.
-            ^ self.
-        ].
+	(aCharacter isCharacter not
+	 or:[aCharacter codePoint > 16rFF]) ifTrue:[
+	    self argumentMustBeCharacter.
+	    ^ self.
+	].
     ].
     "/ migration support
     self
-        nextPutByte:aCharacter asInteger
-        toFile:handle
+	nextPutByte:aCharacter asInteger
+	toFile:handle
 !
 
 nextPutAll:aCollection
@@ -6375,7 +6396,7 @@
      I don't know how to write non-bytes to an external stream, but let superclass handle this."
 
     buffer isSingleByteCollection ifTrue:[
-        ^ self nextPutBytes:initialWriteCount from:buffer startingAt:initialOffset.
+	^ self nextPutBytes:initialWriteCount from:buffer startingAt:initialOffset.
     ].
 
     ^ super nextPutAll:initialWriteCount from:buffer startingAt:initialOffset
--- a/Float.st	Mon Mar 05 15:01:10 2018 +0100
+++ b/Float.st	Mon Mar 05 15:19:40 2018 +0100
@@ -80,7 +80,7 @@
  * (AIX even declares them as macros, so an external decl
  *  will not work below ...
  */
-#if !defined(__aix__) && !defined(NEXT3)
+#if !defined(__aix__) && !defined(__NEXT3__)
 
 # ifdef acos
   double acos();
@@ -178,7 +178,7 @@
 # endif
 #endif
 
-#ifndef NEXT3
+#ifndef __NEXT3__
 # ifndef ceil
 double ceil();
 double floor();
@@ -309,24 +309,24 @@
     "return the next Float from the string starting at startIndex.
      No spaces are skipped.
 
-     This is a specially tuned entry (using a low-level C-call), 
+     This is a specially tuned entry (using a low-level C-call),
      which returns garbage if the argument string is not a valid float number.
      It has been added to allow high speed string decomposition into numbers,
      especially for mass-data."
 
 %{   /* NOCONTEXT */
      if (__isStringLike(aString) && __isSmallInteger(startIndex)) {
-        char *cp = (char *)(__stringVal(aString));
-        int idx = __intVal(startIndex) - 1;
-        double atof();
-        double val;
-        OBJ newFloat;
-
-        if ((unsigned)idx < __stringSize(aString)) {
-            val = atof(cp + idx);
-            __qMKFLOAT(newFloat, val);
-            RETURN (newFloat);
-        }
+	char *cp = (char *)(__stringVal(aString));
+	int idx = __intVal(startIndex) - 1;
+	double atof();
+	double val;
+	OBJ newFloat;
+
+	if ((unsigned)idx < __stringSize(aString)) {
+	    val = atof(cp + idx);
+	    __qMKFLOAT(newFloat, val);
+	    RETURN (newFloat);
+	}
      }
 %}.
      self primitiveFailed.
@@ -353,17 +353,17 @@
      Float fastFromString:'hello123.45E4' at:1  -> 0
 
      Time millisecondsToRun:[
-        100000 timesRepeat:[
-            Float readFrom:'123.45'
-        ]
+	100000 timesRepeat:[
+	    Float readFrom:'123.45'
+	]
      ]
     "
 
     "
      Time millisecondsToRun:[
-        100000 timesRepeat:[
-            Float fastFromString:'123.45' at:1
-        ]
+	100000 timesRepeat:[
+	    Float fastFromString:'123.45' at:1
+	]
      ]
     "
 
@@ -376,8 +376,8 @@
 %{  /* NOCONTEXT */
 #ifndef __SCHTEAM__
     REGISTER union {
-        unsigned int    i;
-        float           f;
+	unsigned int    i;
+	float           f;
     } r;
 
     r.i = __unsignedLongIntVal( anInteger );
@@ -401,19 +401,19 @@
     extern int __unsignedLong64IntVal(OBJ o, __uint64__ *pI);
 
     REGISTER union {
-        __uint64__  u64;
-        double      d;
+	__uint64__  u64;
+	double      d;
     } r;
 
     if (__unsignedLong64IntVal(anInteger, &r.u64))  {
-        RETURN( __MKFLOAT(r.d) );
+	RETURN( __MKFLOAT(r.d) );
     }
 #endif
 %}.
     self primitiveFailed.
 
     "
-        Float fromIEEE64Bit:((Float pi digitBytesMSB:true) asIntegerMSB:true)
+	Float fromIEEE64Bit:((Float pi digitBytesMSB:true) asIntegerMSB:true)
     "
 
     "Modified: / 21-06-2017 / 09:37:47 / cg"
@@ -448,7 +448,7 @@
 
 fromNumber:aNumber
     "return aNumber coerced to Float"
-    
+
     ^ aNumber asFloat
 
     "Modified (comment): / 21-06-2017 / 08:55:15 / cg"
@@ -464,9 +464,9 @@
 %{  /* NOCONTEXT */
 #ifndef __SCHTEAM__
     REGISTER union {
-        unsigned char   b[4];
-        unsigned int    l;
-        float           f;
+	unsigned char   b[4];
+	unsigned int    l;
+	float           f;
     } r;
 
 # ifdef __LSBFIRST__
@@ -481,15 +481,15 @@
     r.b[3] = __intVal( b3 );
 # endif
     if( (r.l & 0xff800000) != 0x80000000 ) {
-        if( (r.l & 0x7f800000) > 0x01000000 )
-            r.l -= 0x01000000;
-        else
-            r.l = 0;
-
-        RETURN( __MKFLOAT(r.f) );
+	if( (r.l & 0x7f800000) > 0x01000000 )
+	    r.l -= 0x01000000;
+	else
+	    r.l = 0;
+
+	RETURN( __MKFLOAT(r.f) );
     } else {
-        // add code to handle NaN and Inf
-        RETURN( nil );
+	// add code to handle NaN and Inf
+	RETURN( nil );
     }
 #endif
 %}.
@@ -521,7 +521,7 @@
      (i.e. the value-delta of the least significant bit)"
 
     Epsilon isNil ifTrue:[
-        Epsilon := self computeEpsilon.
+	Epsilon := self computeEpsilon.
     ].
     ^ Epsilon
 
@@ -1625,7 +1625,7 @@
      as the receiver, false otherwise.
 
      nE is the number of minimal float distances, that the numbers may differ and
-     still be considered equal. 
+     still be considered equal.
      That is an integer, which counts the delta-steps in the mantissa.
      Notice, that the absolute value of the epsilon depends on the receiver
      (i.e. with a receiver of 10^17, a mantissa-step is much larger than with 10^-17 as receiver)
@@ -1635,7 +1635,7 @@
     "
 
     Epsilon isNil ifTrue:[
-        Epsilon := self class computeEpsilon.
+	Epsilon := self class computeEpsilon.
     ].
 
 %{  /* NOCONTEXT */
@@ -1652,29 +1652,29 @@
 
     INT64 ulpDiff;
     union {
-        double d;
-        INT64 i;
+	double d;
+	INT64 i;
     } myself, otherFloat;
     int nEpsilon;
     double scaledEpsilon;
 
     if (!__isSmallInteger(nE)) {
-        goto tryHarder;
+	goto tryHarder;
     }
 
     nEpsilon =  __intVal(nE);
     scaledEpsilon = nEpsilon *__floatVal(@global(Epsilon));
 
     if (__isSmallInteger(aNumber)) {
-        otherFloat.d = (double)(__intVal(aNumber));
+	otherFloat.d = (double)(__intVal(aNumber));
     } else if (aNumber == nil) {
-        RETURN(false)
+	RETURN(false)
     } else if (__qIsFloatLike(aNumber)) {
-        otherFloat.d = (double)(__floatVal(aNumber));
+	otherFloat.d = (double)(__floatVal(aNumber));
     } else if (__qIsShortFloat(aNumber)) {
-        otherFloat.d = (double)(__shortFloatVal(aNumber));
+	otherFloat.d = (double)(__shortFloatVal(aNumber));
     } else {
-        goto tryHarder;
+	goto tryHarder;
     }
 
     myself.d = __floatVal(self);
@@ -1682,12 +1682,12 @@
     // Check if the numbers are really close -- needed
     // when comparing numbers near zero (ULP method below fails for numbers near 0!).
     if (fabs(myself.d - otherFloat.d) <= scaledEpsilon) {
-        RETURN(true);
+	RETURN(true);
     }
 
     // if the signs differ, the numbers are different
     if ((myself.d >= 0) != (otherFloat.d >= 0)) {
-        RETURN(false);
+	RETURN(false);
     }
 
     // compute the difference of the 'units in the last place" ULP
@@ -1695,26 +1695,26 @@
     ulpDiff = myself.i - otherFloat.i;
     if (ulpDiff < 0) ulpDiff = -ulpDiff;
     if (ulpDiff <= nEpsilon) {
-        RETURN(true);
+	RETURN(true);
     } else {
-        RETURN(false)
+	RETURN(false)
     }
 
 tryHarder:;
 %}.
     nE isInteger ifFalse:[
-        self error:'nEpsilon argument must be an integer'.
+	self error:'nEpsilon argument must be an integer'.
     ].
     ^ aNumber isAlmostEqualToFromFloat:self nEpsilon:nE
 
     "
-        67329.234 isAlmostEqualTo:67329.23400000001 nEpsilon:1 
-        1.0 isAlmostEqualTo:1.0001 nEpsilon:1                  
-        1.0 isAlmostEqualTo:-1.0 nEpsilon:1       
-        1 isAlmostEqualTo:1.000000000000001 nEpsilon:1  
-        1 isAlmostEqualTo:1.000000000000001 nEpsilon:10  
-        1.0 isAlmostEqualTo:1 nEpsilon:1
-        1.0 isAlmostEqualTo:1 asFraction nEpsilon:1
+	67329.234 isAlmostEqualTo:67329.23400000001 nEpsilon:1
+	1.0 isAlmostEqualTo:1.0001 nEpsilon:1
+	1.0 isAlmostEqualTo:-1.0 nEpsilon:1
+	1 isAlmostEqualTo:1.000000000000001 nEpsilon:1
+	1 isAlmostEqualTo:1.000000000000001 nEpsilon:10
+	1.0 isAlmostEqualTo:1 nEpsilon:1
+	1.0 isAlmostEqualTo:1 asFraction nEpsilon:1
     "
 !
 
@@ -1863,20 +1863,20 @@
 
     val = __floatVal(self);
 
-    /* 
-     * to suppress the warnBox opened by win32 
+    /*
+     * to suppress the warnBox opened by win32
      * to avoid returning -INF from some unix math libs (__osx__)
      */
     if (val > 0.0) {
-        __threadErrno = 0;
-        rslt = log(val);
-        if (! isnan(rslt))  /* Currently all our systems support isnan() */
-        {
-            if (__threadErrno == 0) {
-                __qMKFLOAT(newFloat, rslt);
-                RETURN ( newFloat );
-            }
-        }
+	__threadErrno = 0;
+	rslt = log(val);
+	if (! isnan(rslt))  /* Currently all our systems support isnan() */
+	{
+	    if (__threadErrno == 0) {
+		__qMKFLOAT(newFloat, rslt);
+		RETURN ( newFloat );
+	    }
+	}
     }
 #endif
 %}.
@@ -1885,11 +1885,11 @@
      if you need -INF for a zero receiver, try Number trapInfinity:[...]
     "
     ^ self class
-        raise:(self = 0 ifTrue:[#infiniteResultSignal] ifFalse:[#domainErrorSignal])
-        receiver:self
-        selector:#ln
-        arguments:#()
-        errorString:'bad receiver in ln (not strictly positive)'
+	raise:(self = 0 ifTrue:[#infiniteResultSignal] ifFalse:[#domainErrorSignal])
+	receiver:self
+	selector:#ln
+	arguments:#()
+	errorString:'bad receiver in ln (not strictly positive)'
 
     "Modified (comment): / 03-07-2017 / 15:58:17 / cg"
 !
@@ -1908,20 +1908,20 @@
 
     val = __floatVal(self);
 
-    /* 
-     * to suppress the warnBox opened by win32 
+    /*
+     * to suppress the warnBox opened by win32
      * to avoid returning -INF from some unix math libs (__osx__)
      */
     if (val > 0.0) {
-        __threadErrno = 0;
-        rslt = log10(val);
-        if (! isnan(rslt))  /* Currently all our systems support isnan() */
-        {
-            if (__threadErrno == 0) {
-                __qMKFLOAT(newFloat, rslt);
-                RETURN ( newFloat );
-            }
-        }
+	__threadErrno = 0;
+	rslt = log10(val);
+	if (! isnan(rslt))  /* Currently all our systems support isnan() */
+	{
+	    if (__threadErrno == 0) {
+		__qMKFLOAT(newFloat, rslt);
+		RETURN ( newFloat );
+	    }
+	}
     }
 #endif
 %}.
@@ -1930,11 +1930,11 @@
      if you need -INF for a zero receiver, try Number trapInfinity:[...]
     "
     ^ self class
-        raise:(self = 0 ifTrue:[#infiniteResultSignal] ifFalse:[#domainErrorSignal])
-        receiver:self
-        selector:#log10
-        arguments:#()
-        errorString:'bad receiver in log10 (not strictly positive)'
+	raise:(self = 0 ifTrue:[#infiniteResultSignal] ifFalse:[#domainErrorSignal])
+	receiver:self
+	selector:#log10
+	arguments:#()
+	errorString:'bad receiver in log10 (not strictly positive)'
 
     "Modified (comment): / 03-07-2017 / 15:58:21 / cg"
 !
@@ -1947,28 +1947,28 @@
     OBJ newFloat;
 
     if (__isFloatLike(aNumber)) {
-        _n = __floatVal(aNumber);
+	_n = __floatVal(aNumber);
     } else if (__isSmallInteger(aNumber)) {
-        _n = (double)__intVal(aNumber);
+	_n = (double)__intVal(aNumber);
     } else {
-        goto notEasy;
-    }        
+	goto notEasy;
+    }
     __threadErrno = 0;
     rslt = pow(__floatVal(self), _n);
     if (! isnan(rslt)) { /* Currently all our systems support isnan() */
-        if (__threadErrno == 0) {
-            __qMKFLOAT(newFloat, rslt);
-            RETURN ( newFloat );
-        }
+	if (__threadErrno == 0) {
+	    __qMKFLOAT(newFloat, rslt);
+	    RETURN ( newFloat );
+	}
     }
-notEasy: ;    
+notEasy: ;
 %}.
     "/ the c-library pow function, has a bug:
     "/ it does not deal correctly with negative numbers.
     "/ I.e. it raises an error on -8^(1/3) instead of returning a negative -2
     "/ work around with a kludge:
     self < 0 ifTrue:[
-        ^ (self negated raisedTo:aNumber) negated
+	^ (self negated raisedTo:aNumber) negated
     ].
 
     ^ aNumber raisedFromFloat:self
@@ -2040,26 +2040,26 @@
     ^ self printStringWithFormat:self class defaultPrintFormat
 
     "
-        Float pi printString.
-        1.0 printString
-        1.234 printString
-        1e10 printString
-        1e-60 printString
-        1.2e3 printString
-        1.2e30 printString
-        (1.0 uncheckedDivide:0) printString
-        (0.0 uncheckedDivide:0) printString
-        self pi printString.
-
-        DecimalPointCharacter := $,.
-        1.234 printString.
-        1.0 printString.
-        1e10 printString.
-        1.2e3 printString.
-        1.2e30 printString.
-        (1.0 uncheckedDivide:0) printString.
-        (0.0 uncheckedDivide:0) printString.
-        DecimalPointCharacter := $.
+	Float pi printString.
+	1.0 printString
+	1.234 printString
+	1e10 printString
+	1e-60 printString
+	1.2e3 printString
+	1.2e30 printString
+	(1.0 uncheckedDivide:0) printString
+	(0.0 uncheckedDivide:0) printString
+	self pi printString.
+
+	DecimalPointCharacter := $,.
+	1.234 printString.
+	1.0 printString.
+	1e10 printString.
+	1.2e3 printString.
+	1.2e30 printString.
+	(1.0 uncheckedDivide:0) printString.
+	(0.0 uncheckedDivide:0) printString.
+	DecimalPointCharacter := $.
     "
 
     "Modified (comment): / 21-06-2017 / 09:46:01 / cg"
@@ -2169,7 +2169,7 @@
 printfPrintString:formatString
     "non-standard: return a printed representation of the receiver
      as specified by formatString, which is defined by printf.
-     
+
      If you use this, be aware, that specifying doubles differs on
      systems; on SYSV machines you have to give something like %lf,
      while on BSD systems the format string has to be %F.
@@ -2186,24 +2186,24 @@
     int len;
 
     if (__isStringLike(formatString)) {
-        /*
-         * actually only needed on sparc: since thisContext is
-         * in a global register, which gets destroyed by printf,
-         * manually save it here - very stupid ...
-         */
-        __BEGIN_PROTECT_REGISTERS__
-
-        len = snprintf(buffer, sizeof(buffer), __stringVal(formatString), __floatVal(self));
-
-        __END_PROTECT_REGISTERS__
-
-        if (len < 0) goto fail;
-        if (len >= sizeof(buffer)) goto fail;
-        
-        s = __MKSTRING_L(buffer, len);
-        if (s != nil) {
-            RETURN (s);
-        }
+	/*
+	 * actually only needed on sparc: since thisContext is
+	 * in a global register, which gets destroyed by printf,
+	 * manually save it here - very stupid ...
+	 */
+	__BEGIN_PROTECT_REGISTERS__
+
+	len = snprintf(buffer, sizeof(buffer), __stringVal(formatString), __floatVal(self));
+
+	__END_PROTECT_REGISTERS__
+
+	if (len < 0) goto fail;
+	if (len >= sizeof(buffer)) goto fail;
+
+	s = __MKSTRING_L(buffer, len);
+	if (s != nil) {
+	    RETURN (s);
+	}
     }
 fail: ;
 %}.
@@ -2218,12 +2218,12 @@
      Float pi printfPrintString:'%%F -> %F'
      Float pi printfPrintString:'%%7.5G -> %7.5G'
      Float pi printfPrintString:'%%7.5F -> %7.5F'
-     
+
      Float pi printfPrintString:'%%7.5f -> %7.5f'
      Float pi printfPrintString:'%%100.98f -> %100.98f'
      Float pi printfPrintString:'%%100.6f -> %100.6f'
      Float pi printfPrintString:'%%300.6f -> %300.6f'
-     
+
      Float pi printfPrintString:'%%-100.98f -> %-100.98f'
      Float pi printfPrintString:'%%300.298f -> %300.298f'
      Float pi printfPrintString:'%%-300.298f -> %-300.298f'
@@ -3020,29 +3020,29 @@
     if ((val >= -1.0) && (val <= 1.0))
 # endif
     {
-        rslt = atanh(val);
-        if (! isnan(rslt))  /* Currently all our systems support isnan() */
+	rslt = atanh(val);
+	if (! isnan(rslt))  /* Currently all our systems support isnan() */
 # ifdef __osx__
-        if (! isinf(rslt))
+	if (! isinf(rslt))
 # endif
-        {
-            if (__threadErrno == 0) {
-                __qMKFLOAT(newFloat, rslt);
-                RETURN ( newFloat );
-            }
-        }
+	{
+	    if (__threadErrno == 0) {
+		__qMKFLOAT(newFloat, rslt);
+		RETURN ( newFloat );
+	    }
+	}
     }
 #endif
 %}.
     useFallBack notNil ifTrue:[
-        ^ super arcTanh
+	^ super arcTanh
     ].
     ^ self class
-        raise:#domainErrorSignal
-        receiver:self
-        selector:#arcTanh
-        arguments:#()
-        errorString:'bad receiver in arcTanh'
+	raise:#domainErrorSignal
+	receiver:self
+	selector:#arcTanh
+	arguments:#()
+	errorString:'bad receiver in arcTanh'
 !
 
 cos
--- a/UnixOperatingSystem.st	Mon Mar 05 15:01:10 2018 +0100
+++ b/UnixOperatingSystem.st	Mon Mar 05 15:19:40 2018 +0100
@@ -1,6 +1,6 @@
 "
  COPYRIGHT (c) 1988 by Claus Gittinger
-              All Rights Reserved
+	      All Rights Reserved
 
  This software is furnished under a license and may be used
  only in accordance with the terms of that license and with the
@@ -177,7 +177,7 @@
 
 # ifdef HAS_OPENDIR
 #  include <sys/types.h>
-#  ifdef NEXT
+#  ifdef __NEXT__
 #   include <sys/dir.h>
 #   define DIRENT_STRUCT        struct direct
 #  else
@@ -308,17 +308,17 @@
 #   ifndef _TIME_H_
 // old hack
 struct tm {
-        int     tm_sec;         /* seconds after the minute [0-60] */
-        int     tm_min;         /* minutes after the hour [0-59] */
-        int     tm_hour;        /* hours since midnight [0-23] */
-        int     tm_mday;        /* day of the month [1-31] */
-        int     tm_mon;         /* months since January [0-11] */
-        int     tm_year;        /* years since 1900 */
-        int     tm_wday;        /* days since Sunday [0-6] */
-        int     tm_yday;        /* days since January 1 [0-365] */
-        int     tm_isdst;       /* Daylight Savings Time flag */
-        long    tm_gmtoff;      /* offset from CUT in seconds */
-        char    *tm_zone;       /* timezone abbreviation */
+	int     tm_sec;         /* seconds after the minute [0-60] */
+	int     tm_min;         /* minutes after the hour [0-59] */
+	int     tm_hour;        /* hours since midnight [0-23] */
+	int     tm_mday;        /* day of the month [1-31] */
+	int     tm_mon;         /* months since January [0-11] */
+	int     tm_year;        /* years since 1900 */
+	int     tm_wday;        /* days since Sunday [0-6] */
+	int     tm_yday;        /* days since January 1 [0-365] */
+	int     tm_isdst;       /* Daylight Savings Time flag */
+	long    tm_gmtoff;      /* offset from CUT in seconds */
+	char    *tm_zone;       /* timezone abbreviation */
 };
 #   endif
 #  endif /* NO_LONGER */
@@ -449,10 +449,10 @@
  * NeXT has no pid_t
  * and no sigemptyset
  */
-# ifdef NEXT
+# ifdef __NEXT__
 #  define NO_WAITPID
 # endif
-# ifdef NEXT3
+# ifdef __NEXT3__
    typedef int pid_t;
 #  define sigemptyset(set)      ((*(set) = 0L), 0)
 #  define HAS_GETDOMAINNAME
@@ -490,7 +490,7 @@
  * some (BSD ?) have no timezone global,
  * but provide the info in struct timezone.
  */
-# if defined(ultrix) || defined(sunos) || defined(NEXT)
+# if defined(ultrix) || defined(sunos) || defined(__NEXT__)
 #  define HAS_NO_TIMEZONE
 # endif
 # if defined(__osx__)
@@ -724,103 +724,103 @@
     sigset_t block, omask;
 
     if (line == NULL)
-        return -1;
+	return -1;
 
     sa.sa_handler = SIG_IGN;
     sa.sa_flags = 0;
     __sigemptyset (&sa.sa_mask);
 
     if (__sigaction (SIGINT, &sa, &intr) < 0) {
-        DPRINTF(("1: errno=%d\n", errno));
-        return -1;
+	DPRINTF(("1: errno=%d\n", errno));
+	return -1;
     }
     if (__sigaction (SIGQUIT, &sa, &quit) < 0) {
-        save = errno;
-        (void) __sigaction (SIGINT, &intr, (struct sigaction *) NULL);
-        errno = save;
-        DPRINTF(("2: errno=%d\n", errno));
-        return -1;
+	save = errno;
+	(void) __sigaction (SIGINT, &intr, (struct sigaction *) NULL);
+	errno = save;
+	DPRINTF(("2: errno=%d\n", errno));
+	return -1;
     }
 
     __sigemptyset (&block);
     __sigaddset (&block, SIGCHLD);
     save = errno;
     if (__sigprocmask(SIG_BLOCK, &block, &omask) < 0) {
-        if (errno == ENOSYS)
-            errno = save;
-        else {
-            save = errno;
-            (void) __sigaction(SIGINT, &intr, (struct sigaction *) NULL);
-            (void) __sigaction (SIGQUIT, &quit, (struct sigaction *) NULL);
-            errno = save;
-            DPRINTF(("3: errno=%d\n", errno));
-            return -1;
-        }
+	if (errno == ENOSYS)
+	    errno = save;
+	else {
+	    save = errno;
+	    (void) __sigaction(SIGINT, &intr, (struct sigaction *) NULL);
+	    (void) __sigaction (SIGQUIT, &quit, (struct sigaction *) NULL);
+	    errno = save;
+	    DPRINTF(("3: errno=%d\n", errno));
+	    return -1;
+	}
     }
 
     pid = FORK ();
     if (pid == (pid_t) 0) {
-        /* Child side.  */
-        CONST char *new_argv[4];
-        new_argv[0] = SHELL_NAME;
-        new_argv[1] = "-c";
-        new_argv[2] = line;
-        new_argv[3] = NULL;
-
-        /* Restore the signals.  */
-        (void) __sigaction (SIGINT, &intr, (struct sigaction *) NULL);
-        (void) __sigaction (SIGQUIT, &quit, (struct sigaction *) NULL);
-        (void) __sigprocmask (SIG_SETMASK, &omask, (sigset_t *) NULL);
-
-        /* Exec the shell.  */
-        (void) __execve (SHELL_PATH, (char *CONST *) new_argv, __environ);
-        _exit (127);
+	/* Child side.  */
+	CONST char *new_argv[4];
+	new_argv[0] = SHELL_NAME;
+	new_argv[1] = "-c";
+	new_argv[2] = line;
+	new_argv[3] = NULL;
+
+	/* Restore the signals.  */
+	(void) __sigaction (SIGINT, &intr, (struct sigaction *) NULL);
+	(void) __sigaction (SIGQUIT, &quit, (struct sigaction *) NULL);
+	(void) __sigprocmask (SIG_SETMASK, &omask, (sigset_t *) NULL);
+
+	/* Exec the shell.  */
+	(void) __execve (SHELL_PATH, (char *CONST *) new_argv, __environ);
+	_exit (127);
     } else {
-        if (pid < (pid_t) 0) {
-            /* The fork failed.  */
-            DPRINTF(("4: errno=%d\n", errno));
-            status = -1;
-        } else {
-            /* Parent side.  */
+	if (pid < (pid_t) 0) {
+	    /* The fork failed.  */
+	    DPRINTF(("4: errno=%d\n", errno));
+	    status = -1;
+	} else {
+	    /* Parent side.  */
 #ifdef  NO_WAITPID
-            pid_t child;
-
-            do {
-                __BEGIN_INTERRUPTABLE__
-                child = __wait (&status);
-                __END_INTERRUPTABLE__
-                if (child < 0 && errno != EINTR) {
-                    DPRINTF(("5: errno=%d\n", errno));
-                    status = -1;
-                    break;
-                }
-            } while (child != pid);
+	    pid_t child;
+
+	    do {
+		__BEGIN_INTERRUPTABLE__
+		child = __wait (&status);
+		__END_INTERRUPTABLE__
+		if (child < 0 && errno != EINTR) {
+		    DPRINTF(("5: errno=%d\n", errno));
+		    status = -1;
+		    break;
+		}
+	    } while (child != pid);
 #else
-            pid_t child;
-
-            /* claus: the original did not care for EINTR here ... */
-            do {
-                __BEGIN_INTERRUPTABLE__
-                child = __waitpid (pid, &status, 0);
-                __END_INTERRUPTABLE__
-            } while ((child != pid) && (errno == EINTR));
-            if (child != pid) {
-                DPRINTF(("6: errno=%d\n", errno));
-                status = -1;
-            }
+	    pid_t child;
+
+	    /* claus: the original did not care for EINTR here ... */
+	    do {
+		__BEGIN_INTERRUPTABLE__
+		child = __waitpid (pid, &status, 0);
+		__END_INTERRUPTABLE__
+	    } while ((child != pid) && (errno == EINTR));
+	    if (child != pid) {
+		DPRINTF(("6: errno=%d\n", errno));
+		status = -1;
+	    }
 #endif /* NO_WAITPID */
-        }
+	}
     }
     save = errno;
     if ((__sigaction (SIGINT, &intr, (struct sigaction *) NULL)
      | __sigaction (SIGQUIT, &quit, (struct sigaction *) NULL)
      | __sigprocmask (SIG_SETMASK, &omask, (sigset_t *) NULL)) != 0) {
-        if (errno == ENOSYS) {
-            errno = save;
-        } else {
-            status = -1;
-            DPRINTF(("7: errno=%d\n", errno));
-        }
+	if (errno == ENOSYS) {
+	    errno = save;
+	} else {
+	    status = -1;
+	    DPRINTF(("7: errno=%d\n", errno));
+	}
     }
 
     return status;
@@ -859,123 +859,123 @@
 static char *
 realpath(const char *path, char *resolved_path)
 {
-        char copy_path[MAXPATHLEN];
-        char link_path[MAXPATHLEN];
-        char *new_path, *max_path, *mallocedPath;
-        int readlinks = 0;
-        int n;
-
-        if (resolved_path == NULL) {
-            mallocedPath = resolved_path = malloc(MAXPATHLEN+1);
-        }
-        new_path = resolved_path;
-
-        /* Make a copy of the source path since we may need to modify it. */
-        strcpy(copy_path, path);
-        path = copy_path;
-        max_path = copy_path + MAXPATHLEN - 2;
-        /* If it's a relative pathname use getwd for starters. */
-        if (*path != '/') {
+	char copy_path[MAXPATHLEN];
+	char link_path[MAXPATHLEN];
+	char *new_path, *max_path, *mallocedPath;
+	int readlinks = 0;
+	int n;
+
+	if (resolved_path == NULL) {
+	    mallocedPath = resolved_path = malloc(MAXPATHLEN+1);
+	}
+	new_path = resolved_path;
+
+	/* Make a copy of the source path since we may need to modify it. */
+	strcpy(copy_path, path);
+	path = copy_path;
+	max_path = copy_path + MAXPATHLEN - 2;
+	/* If it's a relative pathname use getwd for starters. */
+	if (*path != '/') {
 #ifdef HAS_GETCWD
-                new_path = getcwd(new_path, MAXPATHLEN - 1);
+		new_path = getcwd(new_path, MAXPATHLEN - 1);
 #else
-                new_path = getwd(new_path);
-#endif
-                if (new_path == NULL) {
-                    if (mallocedPath) free(mallocedPath);
-                    return(NULL);
-                }
-
-                new_path += strlen(new_path);
-                if (new_path[-1] != '/')
-                        *new_path++ = '/';
-        }
-        else {
-                *new_path++ = '/';
-                path++;
-        }
-        /* Expand each slash-separated pathname component. */
-        while (*path != '\0') {
-                /* Ignore stray "/". */
-                if (*path == '/') {
-                        path++;
-                        continue;
-                }
-                if (*path == '.') {
-                        /* Ignore ".". */
-                        if (path[1] == '\0' || path[1] == '/') {
-                                path++;
-                                continue;
-                        }
-                        if (path[1] == '.') {
-                                if (path[2] == '\0' || path[2] == '/') {
-                                        path += 2;
-                                        /* Ignore ".." at root. */
-                                        if (new_path == resolved_path + 1)
-                                                continue;
-                                        /* Handle ".." by backing up. */
-                                        while ((--new_path)[-1] != '/')
-                                                ;
-                                        continue;
-                                }
-                        }
-                }
-                /* Safely copy the next pathname component. */
-                while (*path != '\0' && *path != '/') {
-                        if (path > max_path) {
-                            if (mallocedPath) free(mallocedPath);
-                            errno = ENAMETOOLONG;
-                            return NULL;
-                        }
-                        *new_path++ = *path++;
-                }
+		new_path = getwd(new_path);
+#endif
+		if (new_path == NULL) {
+		    if (mallocedPath) free(mallocedPath);
+		    return(NULL);
+		}
+
+		new_path += strlen(new_path);
+		if (new_path[-1] != '/')
+			*new_path++ = '/';
+	}
+	else {
+		*new_path++ = '/';
+		path++;
+	}
+	/* Expand each slash-separated pathname component. */
+	while (*path != '\0') {
+		/* Ignore stray "/". */
+		if (*path == '/') {
+			path++;
+			continue;
+		}
+		if (*path == '.') {
+			/* Ignore ".". */
+			if (path[1] == '\0' || path[1] == '/') {
+				path++;
+				continue;
+			}
+			if (path[1] == '.') {
+				if (path[2] == '\0' || path[2] == '/') {
+					path += 2;
+					/* Ignore ".." at root. */
+					if (new_path == resolved_path + 1)
+						continue;
+					/* Handle ".." by backing up. */
+					while ((--new_path)[-1] != '/')
+						;
+					continue;
+				}
+			}
+		}
+		/* Safely copy the next pathname component. */
+		while (*path != '\0' && *path != '/') {
+			if (path > max_path) {
+			    if (mallocedPath) free(mallocedPath);
+			    errno = ENAMETOOLONG;
+			    return NULL;
+			}
+			*new_path++ = *path++;
+		}
 #ifdef S_IFLNK
-                /* Protect against infinite loops. */
-                if (readlinks++ > MAX_READLINKS) {
-                    if (mallocedPath) free(mallocedPath);
-                    errno = ELOOP;
-                    return NULL;
-                }
-                /* See if latest pathname component is a symlink. */
-                *new_path = '\0';
-                n = readlink(resolved_path, link_path, MAXPATHLEN - 1);
-                if (n < 0) {
-                        /* EINVAL means the file exists but isn't a symlink. */
-                        if (errno != EINVAL) {
-                            if (mallocedPath) free(mallocedPath);
-                            return NULL;
-                        }
-                }
-                else {
-                        /* Note: readlink doesn't add the null byte. */
-                        link_path[n] = '\0';
-                        if (*link_path == '/')
-                                /* Start over for an absolute symlink. */
-                                new_path = resolved_path;
-                        else
-                                /* Otherwise back up over this component. */
-                                while (*(--new_path) != '/')
-                                        ;
-                        /* Safe sex check. */
-                        if (strlen(path) + n >= MAXPATHLEN) {
-                            if (mallocedPath) free(mallocedPath);
-                            errno = ENAMETOOLONG;
-                            return NULL;
-                        }
-                        /* Insert symlink contents into path. */
-                        strcat(link_path, path);
-                        strcpy(copy_path, link_path);
-                        path = copy_path;
-                }
+		/* Protect against infinite loops. */
+		if (readlinks++ > MAX_READLINKS) {
+		    if (mallocedPath) free(mallocedPath);
+		    errno = ELOOP;
+		    return NULL;
+		}
+		/* See if latest pathname component is a symlink. */
+		*new_path = '\0';
+		n = readlink(resolved_path, link_path, MAXPATHLEN - 1);
+		if (n < 0) {
+			/* EINVAL means the file exists but isn't a symlink. */
+			if (errno != EINVAL) {
+			    if (mallocedPath) free(mallocedPath);
+			    return NULL;
+			}
+		}
+		else {
+			/* Note: readlink doesn't add the null byte. */
+			link_path[n] = '\0';
+			if (*link_path == '/')
+				/* Start over for an absolute symlink. */
+				new_path = resolved_path;
+			else
+				/* Otherwise back up over this component. */
+				while (*(--new_path) != '/')
+					;
+			/* Safe sex check. */
+			if (strlen(path) + n >= MAXPATHLEN) {
+			    if (mallocedPath) free(mallocedPath);
+			    errno = ENAMETOOLONG;
+			    return NULL;
+			}
+			/* Insert symlink contents into path. */
+			strcat(link_path, path);
+			strcpy(copy_path, link_path);
+			path = copy_path;
+		}
 #endif /* S_IFLNK */
-                *new_path++ = '/';
-        }
-        /* Delete trailing slash but don't whomp a lone slash. */
-        if (new_path != resolved_path + 1 && new_path[-1] == '/')
-                new_path--;
-        /* Make sure it's null terminated. */
-        *new_path = '\0';
-        return resolved_path;
+		*new_path++ = '/';
+	}
+	/* Delete trailing slash but don't whomp a lone slash. */
+	if (new_path != resolved_path + 1 && new_path[-1] == '/')
+		new_path--;
+	/* Make sure it's null terminated. */
+	*new_path = '\0';
+	return resolved_path;
 }
 # define HAS_REALPATH
 #endif /* WANT_REALPATH && not HAS_REALPATH */
@@ -988,7 +988,7 @@
 copyright
 "
  COPYRIGHT (c) 1988 by Claus Gittinger
-              All Rights Reserved
+	      All Rights Reserved
 
  This software is furnished under a license and may be used
  only in accordance with the terms of that license and with the
@@ -1029,93 +1029,93 @@
 
     [Class variables:]
 
-        HostName        <String>        remembered hostname
-
-        DomainName      <String>        remembered domainname
-
-        SlowFork        <Boolean>       if set, fork and popen are avoided;
-                                        (more or less obsolete now)
-
-
-        CurrentDirectory <String>       remembered currentDirectories path
+	HostName        <String>        remembered hostname
+
+	DomainName      <String>        remembered domainname
+
+	SlowFork        <Boolean>       if set, fork and popen are avoided;
+					(more or less obsolete now)
+
+
+	CurrentDirectory <String>       remembered currentDirectories path
 
     [author:]
-        Claus Gittinger
+	Claus Gittinger
 
     [see also:]
-        OSProcessStatus
-        Filename Date Time
-        ExternalStream FileStream PipeStream Socket
+	OSProcessStatus
+	Filename Date Time
+	ExternalStream FileStream PipeStream Socket
 "
 !
 
 examples
 "
   various queries
-                                                                [exBegin]
+								[exBegin]
     Transcript
-        showCR:'hello ' , (OperatingSystem getLoginName)
-                                                                [exEnd]
-
-                                                                [exBegin]
+	showCR:'hello ' , (OperatingSystem getLoginName)
+								[exEnd]
+
+								[exBegin]
     OperatingSystem isUNIXlike ifTrue:[
-        Transcript showCR:'this is some UNIX-like OS'
+	Transcript showCR:'this is some UNIX-like OS'
     ] ifFalse:[
-        Transcript showCR:'this OS is not UNIX-like'
+	Transcript showCR:'this OS is not UNIX-like'
     ]
-                                                                [exEnd]
-
-                                                                [exBegin]
+								[exEnd]
+
+								[exBegin]
     Transcript
-        showCR:'this machine is called ' , OperatingSystem getHostName
-                                                                [exEnd]
-
-                                                                [exBegin]
+	showCR:'this machine is called ' , OperatingSystem getHostName
+								[exEnd]
+
+								[exBegin]
     Transcript
-        showCR:('this machine is in the '
-               , OperatingSystem getDomainName
-               , ' domain')
-                                                                [exEnd]
-
-                                                                [exBegin]
+	showCR:('this machine is in the '
+	       , OperatingSystem getDomainName
+	       , ' domain')
+								[exEnd]
+
+								[exBegin]
     Transcript
-        showCR:('this machine''s CPU is a '
-               , OperatingSystem getCPUType
-               )
-                                                                [exEnd]
-
-                                                                [exBegin]
+	showCR:('this machine''s CPU is a '
+	       , OperatingSystem getCPUType
+	       )
+								[exEnd]
+
+								[exBegin]
     Transcript showCR:'executing ls command ...'.
     OperatingSystem executeCommand:'ls'.
     Transcript showCR:'... done.'.
-                                                                [exEnd]
+								[exEnd]
 
   locking a file
   (should be executed on two running smalltalks - not in two threads):
-                                                                [exBegin]
+								[exBegin]
     |f|
 
     f := 'testFile' asFilename readWriteStream.
 
     10 timesRepeat:[
-        'about to lock ...' printCR.
-        [
-          OperatingSystem
-            lockFD:(f fileDescriptor)
-            shared:false
-            blocking:false
-        ] whileFalse:[
-            'process ' print. OperatingSystem getProcessId print. ' is waiting' printCR.
-            Delay waitForSeconds:1
-        ].
-        'LOCKED ...' printCR.
-        Delay waitForSeconds:10.
-        'unlock ...' printCR.
-        (OperatingSystem
-            unlockFD:(f fileDescriptor)) printCR.
-        Delay waitForSeconds:3.
+	'about to lock ...' printCR.
+	[
+	  OperatingSystem
+	    lockFD:(f fileDescriptor)
+	    shared:false
+	    blocking:false
+	] whileFalse:[
+	    'process ' print. OperatingSystem getProcessId print. ' is waiting' printCR.
+	    Delay waitForSeconds:1
+	].
+	'LOCKED ...' printCR.
+	Delay waitForSeconds:10.
+	'unlock ...' printCR.
+	(OperatingSystem
+	    unlockFD:(f fileDescriptor)) printCR.
+	Delay waitForSeconds:3.
     ]
-                                                                [exBegin]
+								[exBegin]
 "
 ! !
 
@@ -1126,9 +1126,9 @@
 
     "/ protect against double initialization
     Initialized isNil ifTrue:[
-        ObjectMemory addDependent:self.
-        self initializeCachedData.
-        Initialized := true.
+	ObjectMemory addDependent:self.
+	self initializeCachedData.
+	Initialized := true.
     ].
 !
 
@@ -1162,16 +1162,16 @@
     setlocale(LC_CTYPE, "");
     __codeset = nl_langinfo(CODESET);
     if (strlen(__codeset) > 0) {
-        codeset = __MKSTRING(__codeset);
+	codeset = __MKSTRING(__codeset);
     }
 %}.
     codeset notNil ifTrue:[
-        codeset := codeset asLowercase.
-        codeset = 'utf-8' ifTrue:[
-            codeset := #utf8.
-        ] ifFalse:[
-            codeset := codeset asSymbol.
-        ].
+	codeset := codeset asLowercase.
+	codeset = 'utf-8' ifTrue:[
+	    codeset := #utf8.
+	] ifFalse:[
+	    codeset := codeset asSymbol.
+	].
     ].
     Codeset := codeset.
     ^ codeset.
@@ -1185,7 +1185,7 @@
     "catch image restart and flush some cached data"
 
     something == #earlyRestart ifTrue:[
-        self initializeCachedData
+	self initializeCachedData
     ]
 
     "Created: / 15.6.1996 / 15:22:37 / cg"
@@ -1687,230 +1687,230 @@
 %{  /* NOCONTEXT */
 #ifdef SIGABRT
     if (signalName == @symbol(SIGABRT)) {
-        RETURN ( __mkSmallInteger(SIGABRT) );
+	RETURN ( __mkSmallInteger(SIGABRT) );
     }
 #endif
 #ifdef SIGALRM
     if (signalName == @symbol(SIGALRM)) {
-        RETURN ( __mkSmallInteger(SIGALRM) );
+	RETURN ( __mkSmallInteger(SIGALRM) );
     }
 #endif
 #ifdef SIGBREAK
     if (signalName == @symbol(SIGBREAK)) {
-        RETURN ( __mkSmallInteger(SIGBREAK) );
+	RETURN ( __mkSmallInteger(SIGBREAK) );
     }
 #endif
 #ifdef SIGBUS
     if (signalName == @symbol(SIGBUS)) {
-        RETURN ( __mkSmallInteger(SIGBUS) );
+	RETURN ( __mkSmallInteger(SIGBUS) );
     }
 #endif
 #ifdef SIGCHLD
     if ((signalName == @symbol(SIGCHLD))
      || (signalName == @symbol(SIGCLD)) ) {
-        RETURN ( __mkSmallInteger(SIGCHLD) );
+	RETURN ( __mkSmallInteger(SIGCHLD) );
     }
 #else
 # if defined(SIGCLD)
     if ((signalName == @symbol(SIGCHLD))
      || (signalName == @symbol(SIGCLD)) ) {
-        RETURN ( __mkSmallInteger(SIGCLD) );
+	RETURN ( __mkSmallInteger(SIGCLD) );
     }
 # endif
 #endif
 #ifdef SIGCONT
     if (signalName == @symbol(SIGCONT)) {
-        RETURN ( __mkSmallInteger(SIGCONT) );
+	RETURN ( __mkSmallInteger(SIGCONT) );
     }
 #endif
 #ifdef SIGDANGER
     if (signalName == @symbol(SIGDANGER)) {
-        RETURN ( __mkSmallInteger(SIGDANGER) );
+	RETURN ( __mkSmallInteger(SIGDANGER) );
     }
 #endif
 #ifdef SIGEMT
     if (signalName == @symbol(SIGEMT)) {
-        RETURN ( __mkSmallInteger(SIGEMT) );
+	RETURN ( __mkSmallInteger(SIGEMT) );
     }
 #endif
 #ifdef SIGFPE
     if (signalName == @symbol(SIGFPE)) {
-        RETURN ( __mkSmallInteger(SIGFPE) );
+	RETURN ( __mkSmallInteger(SIGFPE) );
     }
 #endif
 #ifdef SIGGRANT
     if (signalName == @symbol(SIGGRANT)) {
-        RETURN ( __mkSmallInteger(SIGGRANT) );
+	RETURN ( __mkSmallInteger(SIGGRANT) );
     }
 #endif
 #ifdef SIGHUP
     if (signalName == @symbol(SIGHUP)) {
-        RETURN ( __mkSmallInteger(SIGHUP) );
+	RETURN ( __mkSmallInteger(SIGHUP) );
     }
 #endif
 #ifdef SIGILL
     if (signalName == @symbol(SIGILL)) {
-        RETURN ( __mkSmallInteger(SIGILL) );
+	RETURN ( __mkSmallInteger(SIGILL) );
     }
 #endif
 #ifdef SIGINT
     if (signalName == @symbol(SIGINT)) {
-        RETURN ( __mkSmallInteger(SIGINT) );
+	RETURN ( __mkSmallInteger(SIGINT) );
     }
 #endif
 #ifdef SIGIO
     if (signalName == @symbol(SIGIO)) {
-        RETURN ( __mkSmallInteger(SIGIO) );
+	RETURN ( __mkSmallInteger(SIGIO) );
     }
 #endif
 #ifdef SIGIOT
     if (signalName == @symbol(SIGIOT)) {
-        RETURN ( __mkSmallInteger(SIGIOT) );
+	RETURN ( __mkSmallInteger(SIGIOT) );
     }
 #endif
 #ifdef SIGKILL
     if (signalName == @symbol(SIGKILL)) {
-        RETURN ( __mkSmallInteger(SIGKILL) );
+	RETURN ( __mkSmallInteger(SIGKILL) );
     }
 #endif
 #ifdef SIGLOST
     if (signalName == @symbol(SIGLOST)) {
-        RETURN ( __mkSmallInteger(SIGLOST) );
+	RETURN ( __mkSmallInteger(SIGLOST) );
     }
 #endif
 #ifdef SIGMIGRATE
     if (signalName == @symbol(SIGMIGRATE)) {
-        RETURN ( __mkSmallInteger(SIGMIGRATE) );
+	RETURN ( __mkSmallInteger(SIGMIGRATE) );
     }
 #endif
 #ifdef SIGMSG
     if (signalName == @symbol(SIGMSG)) {
-        RETURN ( __mkSmallInteger(SIGMSG) );
+	RETURN ( __mkSmallInteger(SIGMSG) );
     }
 #endif
 #ifdef SIGPIPE
     if (signalName == @symbol(SIGPIPE)) {
-        RETURN ( __mkSmallInteger(SIGPIPE) );
+	RETURN ( __mkSmallInteger(SIGPIPE) );
     }
 #endif
 #ifdef SIGPOLL
     if (signalName == @symbol(SIGPOLL)) {
-        RETURN ( __mkSmallInteger(SIGPOLL) );
+	RETURN ( __mkSmallInteger(SIGPOLL) );
     }
 #endif
 #ifdef SIGPRE
     if (signalName == @symbol(SIGPRE)) {
-        RETURN ( __mkSmallInteger(SIGPRE) );
+	RETURN ( __mkSmallInteger(SIGPRE) );
     }
 #endif
 #ifdef SIGPROF
     if (signalName == @symbol(SIGPROF)) {
-        RETURN ( __mkSmallInteger(SIGPROF) );
+	RETURN ( __mkSmallInteger(SIGPROF) );
     }
 #endif
 #ifdef SIGPWR
     if (signalName == @symbol(SIGPWR)) {
-        RETURN ( __mkSmallInteger(SIGPWR) );
+	RETURN ( __mkSmallInteger(SIGPWR) );
     }
 #endif
 #ifdef SIGQUIT
     if (signalName == @symbol(SIGQUIT)) {
-        RETURN ( __mkSmallInteger(SIGQUIT) );
+	RETURN ( __mkSmallInteger(SIGQUIT) );
     }
 #endif
 #ifdef SIGRETRACT
     if (signalName == @symbol(SIGRETRACT)) {
-        RETURN ( __mkSmallInteger(SIGRETRACT) );
+	RETURN ( __mkSmallInteger(SIGRETRACT) );
     }
 #endif
 #ifdef SIGSAK
     if (signalName == @symbol(SIGSAK)) {
-        RETURN ( __mkSmallInteger(SIGSAK) );
+	RETURN ( __mkSmallInteger(SIGSAK) );
     }
 #endif
 #ifdef SIGSEGV
     if (signalName == @symbol(SIGSEGV)) {
-        RETURN ( __mkSmallInteger(SIGSEGV) );
+	RETURN ( __mkSmallInteger(SIGSEGV) );
     }
 #endif
 #ifdef SIGSOUND
     if (signalName == @symbol(SIGSOUND)) {
-        RETURN ( __mkSmallInteger(SIGSOUND) );
+	RETURN ( __mkSmallInteger(SIGSOUND) );
     }
 #endif
 #ifdef SIGSTOP
     if (signalName == @symbol(SIGSTOP)) {
-        RETURN ( __mkSmallInteger(SIGSTOP) );
+	RETURN ( __mkSmallInteger(SIGSTOP) );
     }
 #endif
 #ifdef SIGSYS
     if (signalName == @symbol(SIGSYS)) {
-        RETURN ( __mkSmallInteger(SIGSYS) );
+	RETURN ( __mkSmallInteger(SIGSYS) );
     }
 #endif
 #ifdef SIGTERM
     if (signalName == @symbol(SIGTERM)) {
-        RETURN ( __mkSmallInteger(SIGTERM) );
+	RETURN ( __mkSmallInteger(SIGTERM) );
     }
 #endif
 #ifdef SIGTRAP
     if (signalName == @symbol(SIGTRAP)) {
-        RETURN ( __mkSmallInteger(SIGTRAP) );
+	RETURN ( __mkSmallInteger(SIGTRAP) );
     }
 #endif
 #ifdef SIGTSTP
     if (signalName == @symbol(SIGTSTP)) {
-        RETURN ( __mkSmallInteger(SIGTSTP) );
+	RETURN ( __mkSmallInteger(SIGTSTP) );
     }
 #endif
 #ifdef SIGTTIN
     if (signalName == @symbol(SIGTTIN)) {
-        RETURN ( __mkSmallInteger(SIGTTIN) );
+	RETURN ( __mkSmallInteger(SIGTTIN) );
     }
 #endif
 #ifdef SIGTTOU
     if (signalName == @symbol(SIGTTOU)) {
-        RETURN ( __mkSmallInteger(SIGTTOU) );
+	RETURN ( __mkSmallInteger(SIGTTOU) );
     }
 #endif
 #ifdef SIGURG
     if (signalName == @symbol(SIGURG)) {
-        RETURN ( __mkSmallInteger(SIGURG) );
+	RETURN ( __mkSmallInteger(SIGURG) );
     }
 #endif
 #ifdef SIGUSR1
     if (signalName == @symbol(SIGUSR1)) {
-        RETURN ( __mkSmallInteger(SIGUSR1) );
+	RETURN ( __mkSmallInteger(SIGUSR1) );
     }
 #endif
 #ifdef SIGUSR2
     if (signalName == @symbol(SIGUSR2)) {
-        RETURN ( __mkSmallInteger(SIGUSR2) );
+	RETURN ( __mkSmallInteger(SIGUSR2) );
     }
 #endif
 #ifdef SIGVTALRM
     if (signalName == @symbol(SIGVTALRM)) {
-        RETURN ( __mkSmallInteger(SIGVTALRM) );
+	RETURN ( __mkSmallInteger(SIGVTALRM) );
     }
 #endif
 #ifdef SIGWINCH
     if (signalName == @symbol(SIGWINCH)) {
-        RETURN ( __mkSmallInteger(SIGWINCH) );
+	RETURN ( __mkSmallInteger(SIGWINCH) );
     }
 #endif
 #ifdef SIGXCPU
     if (signalName == @symbol(SIGXCPU)) {
-        RETURN ( __mkSmallInteger(SIGXCPU) );
+	RETURN ( __mkSmallInteger(SIGXCPU) );
     }
 #endif
 #ifdef SIGXFSZ
     if (signalName == @symbol(SIGXFSZ)) {
-        RETURN ( __mkSmallInteger(SIGXFSZ) );
+	RETURN ( __mkSmallInteger(SIGXFSZ) );
     }
 #endif
 #ifdef SIGINFO
     if (signalName == @symbol(SIGINFO)) {
-        RETURN ( __mkSmallInteger(SIGINFO) );
+	RETURN ( __mkSmallInteger(SIGINFO) );
     }
 #endif
 %}.
@@ -1932,7 +1932,7 @@
 %{
 #ifdef HAS_OPENDIR
     if (__isExternalAddressLike(dirPointer)) {
-        closedir( (DIR *)(__FILEVal(dirPointer)) );
+	closedir( (DIR *)(__FILEVal(dirPointer)) );
     }
 #endif
 %}.
@@ -1954,41 +1954,41 @@
 
     if ((dirPointer != nil)
      && __isExternalAddressLike(dirPointer)) {
-        d = (DIR *)__FILEVal(dirPointer);
-
-        __BEGIN_INTERRUPTABLE__
-        do {
-            do {
-                __threadErrno = 0;
-                dp = readdir(d);
-                /*
-                 * for compatibility with ST-80,
-                 * skip entries for '.' and '..'.
-                 * If wanted, these must be added synthetically.
-                 */
-            } while (dp && ((strcmp(dp->d_name, ".")==0) || (strcmp(dp->d_name, "..")==0)));
-        } while ((dp == NULL) && (__threadErrno == EINTR));
-        __END_INTERRUPTABLE__
-
-        if (dp != NULL) {
-            entry = __MKSTRING((char *)(dp->d_name));
-        } else {
-            if (__threadErrno) {
-                error = __mkSmallInteger(__threadErrno);
-            }
+	d = (DIR *)__FILEVal(dirPointer);
+
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    do {
+		__threadErrno = 0;
+		dp = readdir(d);
+		/*
+		 * for compatibility with ST-80,
+		 * skip entries for '.' and '..'.
+		 * If wanted, these must be added synthetically.
+		 */
+	    } while (dp && ((strcmp(dp->d_name, ".")==0) || (strcmp(dp->d_name, "..")==0)));
+	} while ((dp == NULL) && (__threadErrno == EINTR));
+	__END_INTERRUPTABLE__
+
+	if (dp != NULL) {
+	    entry = __MKSTRING((char *)(dp->d_name));
+	} else {
+	    if (__threadErrno) {
+		error = __mkSmallInteger(__threadErrno);
+	    }
        }
     }
 #endif /* HAS_OPENDIR */
 %}.
     error notNil ifTrue:[
-        ^ StreamIOError newException
-            errorCode:error;
-            osErrorHolder:(OperatingSystem errorHolderForNumber:error);
-            parameter:aDirectoryStream;
-            raiseRequest
+	^ StreamIOError newException
+	    errorCode:error;
+	    osErrorHolder:(OperatingSystem errorHolderForNumber:error);
+	    parameter:aDirectoryStream;
+	    raiseRequest
     ].
     entry notNil ifTrue:[
-        ^ FileStatusInfo new sourcePath:(self decodePath:entry).
+	^ FileStatusInfo new sourcePath:(self decodePath:entry).
     ].
     ^ aDirectoryStream pastEndRead
 ! !
@@ -1999,9 +1999,9 @@
     "open a windows-shell/mac finder/desktop application to present the document contained in aFilenameOrString.
      This is typically used to present help-files, html documents, pdf documents etc.
      operationSymbol is one of:
-        open
-        edit
-        explore
+	open
+	edit
+	explore
      mimeTypeStringArgOrNil is e.g. 'text/html' or: 'application/pdf';
      if nil is passed in, the file's suffix is used to guess it.
     "
@@ -2010,16 +2010,16 @@
 
     cmd := self openApplicationHelperCommand.
     cmd notNil ifTrue:[
-        (cmd includesSubString:'%1') ifTrue:[
-            cmd := cmd bindWith:aFilenameOrString asString.
-        ] ifFalse:[
-            cmd := cmd, ' "', aFilenameOrString asString, '"'.
-        ].
-        (self
-            startProcess:cmd
-            inputFrom:nil outputTo:nil
-            errorTo:nil auxFrom:nil
-            environment: self getEnvironment inDirectory:nil) notNil ifTrue:[ ^ self ]
+	(cmd includesSubString:'%1') ifTrue:[
+	    cmd := cmd bindWith:aFilenameOrString asString.
+	] ifFalse:[
+	    cmd := cmd, ' "', aFilenameOrString asString, '"'.
+	].
+	(self
+	    startProcess:cmd
+	    inputFrom:nil outputTo:nil
+	    errorTo:nil auxFrom:nil
+	    environment: self getEnvironment inDirectory:nil) notNil ifTrue:[ ^ self ]
     ].
     ^ super openApplicationForDocument:aFilenameOrString operation:operationSymbol mimeType:mimeTypeStringArgOrNil ifNone:exceptionBlock
 
@@ -2042,22 +2042,22 @@
 
     ((usersPref := UserPreferences current osFileExplorerCommand) notEmptyOrNil
     and:[ self canExecuteCommand:(usersPref subStrings first) ]) ifTrue:[
-        ^ usersPref
+	^ usersPref
     ].
 
     xdgCurrentDesktop := self getEnvironment: 'XDG_CURRENT_DESKTOP'.
     ((xdgCurrentDesktop = 'GNOME') and:[self canExecuteCommand: 'gnome-open']) ifTrue:[
-        ^ 'gnome-open'
+	^ 'gnome-open'
     ].
     "/ Guess...
     ((xdgCurrentDesktop = 'KDE') and:[self canExecuteCommand: 'kde-open']) ifTrue:[
-        ^ 'kde-open'
+	^ 'kde-open'
     ].
     (self canExecuteCommand: 'xdg-open') ifTrue:[
-        ^ 'xdg-open'
+	^ 'xdg-open'
     ].
     (self canExecuteCommand: 'nautilus') ifTrue:[
-        ^ 'nautilus'
+	^ 'nautilus'
     ].
     ^ nil
 
@@ -2079,16 +2079,16 @@
     cmd := 'xterm -e "%1"' bindWith:shellCommand.
 
     inBackground ifTrue:[
-        ^ self
-            startProcess:cmd
-            inputFrom:nil
-            outputTo:nil
-            errorTo:nil
-            auxFrom:nil
-            environment:nil
-            inDirectory:nil
+	^ self
+	    startProcess:cmd
+	    inputFrom:nil
+	    outputTo:nil
+	    errorTo:nil
+	    auxFrom:nil
+	    environment:nil
+	    inDirectory:nil
     ] ifFalse:[
-        ^ self executeCommand:cmd
+	^ self executeCommand:cmd
     ].
 
     "
@@ -2129,530 +2129,530 @@
      */
 
     if (__isSmallInteger(errNr)) {
-        switch ( __intVal(errNr)) {
-            /*
-             * POSIX errnos - these should be defined
-             */
+	switch ( __intVal(errNr)) {
+	    /*
+	     * POSIX errnos - these should be defined
+	     */
 #ifdef EPERM
-            case EPERM:
-                sym = @symbol(EPERM);
-                typ = @symbol(noPermissionsSignal);
-                break;
+	    case EPERM:
+		sym = @symbol(EPERM);
+		typ = @symbol(noPermissionsSignal);
+		break;
 #endif
 #ifdef ENOENT
-            case ENOENT:
-                sym = @symbol(ENOENT);
-                typ = @symbol(nonexistentSignal);
-                break;
+	    case ENOENT:
+		sym = @symbol(ENOENT);
+		typ = @symbol(nonexistentSignal);
+		break;
 #endif
 #ifdef ESRCH
-            case ESRCH:
-                sym = @symbol(ESRCH);
-                typ = @symbol(unavailableReferentSignal);
-                break;
+	    case ESRCH:
+		sym = @symbol(ESRCH);
+		typ = @symbol(unavailableReferentSignal);
+		break;
 #endif
 #ifdef EINTR
-            case EINTR:
-                sym = @symbol(EINTR);
-                typ = @symbol(transientErrorSignal);
-                break;
+	    case EINTR:
+		sym = @symbol(EINTR);
+		typ = @symbol(transientErrorSignal);
+		break;
 #endif
 #ifdef EIO
-            case EIO:
-                sym = @symbol(EIO);
-                typ = @symbol(transferFaultSignal);
-                break;
+	    case EIO:
+		sym = @symbol(EIO);
+		typ = @symbol(transferFaultSignal);
+		break;
 #endif
 #ifdef ENXIO
-            case ENXIO:
-                sym = @symbol(ENXIO);
-                typ = @symbol(unavailableReferentSignal);
-                break;
+	    case ENXIO:
+		sym = @symbol(ENXIO);
+		typ = @symbol(unavailableReferentSignal);
+		break;
 #endif
 #ifdef E2BIG
-            case E2BIG:
-                sym = @symbol(E2BIG);
-                typ = @symbol(invalidArgumentsSignal);
-                break;
+	    case E2BIG:
+		sym = @symbol(E2BIG);
+		typ = @symbol(invalidArgumentsSignal);
+		break;
 #endif
 #ifdef ENOEXEC
-            case ENOEXEC:
-                sym = @symbol(ENOEXEC);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case ENOEXEC:
+		sym = @symbol(ENOEXEC);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef EBADF
-            case EBADF:
-                sym = @symbol(EBADF);
-                typ = @symbol(badAccessorSignal);
-                break;
+	    case EBADF:
+		sym = @symbol(EBADF);
+		typ = @symbol(badAccessorSignal);
+		break;
 #endif
 #ifdef ECHILD
-            case ECHILD:
-                sym = @symbol(ECHILD);
-                typ = @symbol(informationSignal);
-                break;
+	    case ECHILD:
+		sym = @symbol(ECHILD);
+		typ = @symbol(informationSignal);
+		break;
 #endif
 #if !defined(EWOULDBLOCK) && defined(EAGAIN) && (EWOULDBLOCK != EAGAIN)
-            case EAGAIN:
-                sym = @symbol(EAGAIN);
-                typ = @symbol(notReadySignal);
-                break;
+	    case EAGAIN:
+		sym = @symbol(EAGAIN);
+		typ = @symbol(notReadySignal);
+		break;
 #endif
 #ifdef EOVERFLOW
-            case EOVERFLOW:
-                sym = @symbol(EOVERFLOW);
-                typ = @symbol(rangeErrorSignal);
-                break;
+	    case EOVERFLOW:
+		sym = @symbol(EOVERFLOW);
+		typ = @symbol(rangeErrorSignal);
+		break;
 #endif
 #ifdef ENOMEM
-            case ENOMEM:
-                sym = @symbol(ENOMEM);
-                typ = @symbol(noMemorySignal);
-                break;
+	    case ENOMEM:
+		sym = @symbol(ENOMEM);
+		typ = @symbol(noMemorySignal);
+		break;
 #endif
 #ifdef EACCES
-            case EACCES:
-                sym = @symbol(EACCES);
-                typ = @symbol(noPermissionsSignal);
-                break;
+	    case EACCES:
+		sym = @symbol(EACCES);
+		typ = @symbol(noPermissionsSignal);
+		break;
 #endif
 #ifdef EFAULT
-            case EFAULT:
-                sym = @symbol(EFAULT);
-                typ = @symbol(invalidArgumentsSignal);
-                break;
+	    case EFAULT:
+		sym = @symbol(EFAULT);
+		typ = @symbol(invalidArgumentsSignal);
+		break;
 #endif
 #ifdef EBUSY
-            case EBUSY:
-                sym = @symbol(EBUSY);
-                typ = @symbol(unavailableReferentSignal);
-                break;
+	    case EBUSY:
+		sym = @symbol(EBUSY);
+		typ = @symbol(unavailableReferentSignal);
+		break;
 #endif
 #ifdef EEXIST
-            case EEXIST:
-                sym = @symbol(EEXIST);
-                typ = @symbol(existingReferentSignal);
-                break;
+	    case EEXIST:
+		sym = @symbol(EEXIST);
+		typ = @symbol(existingReferentSignal);
+		break;
 #endif
 #ifdef EXDEV
-            case EXDEV:
-                sym = @symbol(EXDEV);
-                typ = @symbol(inappropriateReferentSignal);
-                break;
+	    case EXDEV:
+		sym = @symbol(EXDEV);
+		typ = @symbol(inappropriateReferentSignal);
+		break;
 #endif
 #ifdef ENODEV
-            case ENODEV:
-                sym = @symbol(ENODEV);
-                typ = @symbol(inaccessibleSignal);
-                break;
+	    case ENODEV:
+		sym = @symbol(ENODEV);
+		typ = @symbol(inaccessibleSignal);
+		break;
 #endif
 #ifdef ENOTDIR
-            case ENOTDIR:
-                sym = @symbol(ENOTDIR);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case ENOTDIR:
+		sym = @symbol(ENOTDIR);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef EISDIR
-            case EISDIR:
-                sym = @symbol(EISDIR);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case EISDIR:
+		sym = @symbol(EISDIR);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef EINVAL
-            case EINVAL:
-                sym = @symbol(EINVAL);
-                typ = @symbol(invalidArgumentsSignal);
-                break;
+	    case EINVAL:
+		sym = @symbol(EINVAL);
+		typ = @symbol(invalidArgumentsSignal);
+		break;
 #endif
 #ifdef ENFILE
-            case ENFILE:
-                sym = @symbol(ENFILE);
-                typ = @symbol(noResourcesSignal);
-                break;
+	    case ENFILE:
+		sym = @symbol(ENFILE);
+		typ = @symbol(noResourcesSignal);
+		break;
 #endif
 #ifdef EMFILE
-            case EMFILE:
-                sym = @symbol(EMFILE);
-                typ = @symbol(noResourcesSignal);
-                break;
+	    case EMFILE:
+		sym = @symbol(EMFILE);
+		typ = @symbol(noResourcesSignal);
+		break;
 #endif
 #ifdef ENOTTY
-            case ENOTTY:
-                sym = @symbol(ENOTTY);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case ENOTTY:
+		sym = @symbol(ENOTTY);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef EFBIG
-            case EFBIG:
-                sym = @symbol(EFBIG);
-                typ = @symbol(noResourcesSignal);
-                break;
+	    case EFBIG:
+		sym = @symbol(EFBIG);
+		typ = @symbol(noResourcesSignal);
+		break;
 #endif
 #ifdef ENOSPC
-            case ENOSPC:
-                sym = @symbol(ENOSPC);
-                typ = @symbol(noResourcesSignal);
-                break;
+	    case ENOSPC:
+		sym = @symbol(ENOSPC);
+		typ = @symbol(noResourcesSignal);
+		break;
 #endif
 #ifdef ENOTSUP
 # if !defined(EOPNOTSUPP) || (ENOTSUP != EOPNOTSUPP)
-            case ENOTSUP:
-                sym = @symbol(ENOTSUP);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case ENOTSUP:
+		sym = @symbol(ENOTSUP);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 # endif
 #endif
 #ifdef ESPIPE
-            case ESPIPE:
-                sym = @symbol(ESPIPE);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case ESPIPE:
+		sym = @symbol(ESPIPE);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef EROFS
-            case EROFS:
-                sym = @symbol(EROFS);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case EROFS:
+		sym = @symbol(EROFS);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef EMLINK
-            case EMLINK:
-                sym = @symbol(EMLINK);
-                typ = @symbol(rangeErrorSignal);
-                break;
+	    case EMLINK:
+		sym = @symbol(EMLINK);
+		typ = @symbol(rangeErrorSignal);
+		break;
 #endif
 #ifdef EPIPE
-            case EPIPE:
-                sym = @symbol(EPIPE);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case EPIPE:
+		sym = @symbol(EPIPE);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef EDOM
-            case EDOM:
-                sym = @symbol(EDOM);
-                typ = @symbol(rangeErrorSignal);
-                break;
+	    case EDOM:
+		sym = @symbol(EDOM);
+		typ = @symbol(rangeErrorSignal);
+		break;
 #endif
 #ifdef ERANGE
-            case ERANGE:
-                sym = @symbol(ERANGE);
-                typ = @symbol(rangeErrorSignal);
-                break;
+	    case ERANGE:
+		sym = @symbol(ERANGE);
+		typ = @symbol(rangeErrorSignal);
+		break;
 #endif
 #ifdef EDEADLK
 # if EDEADLK != EWOULDBLOCK
-            case EDEADLK:
-                sym = @symbol(EDEADLK);
-                typ = @symbol(noResourcesSignal);
-                break;
+	    case EDEADLK:
+		sym = @symbol(EDEADLK);
+		typ = @symbol(noResourcesSignal);
+		break;
 # endif
 #endif
 #ifdef ENAMETOOLONG
-            case ENAMETOOLONG:
-                sym = @symbol(ENAMETOOLONG);
-                typ = @symbol(rangeErrorSignal);
-                break;
+	    case ENAMETOOLONG:
+		sym = @symbol(ENAMETOOLONG);
+		typ = @symbol(rangeErrorSignal);
+		break;
 #endif
 #ifdef ENOLCK
-            case ENOLCK:
-                sym = @symbol(ENOLCK);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case ENOLCK:
+		sym = @symbol(ENOLCK);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef ENOSYS
-            case ENOSYS:
-                sym = @symbol(ENOSYS);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case ENOSYS:
+		sym = @symbol(ENOSYS);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #if defined(ENOTEMPTY) && (ENOTEMPTY != EEXIST)
-            case ENOTEMPTY:
-                sym = @symbol(ENOTEMPTY);
-                typ = @symbol(inappropriateReferentSignal);
-                break;
+	    case ENOTEMPTY:
+		sym = @symbol(ENOTEMPTY);
+		typ = @symbol(inappropriateReferentSignal);
+		break;
 #endif
 #ifdef EILSEQ
-            case EILSEQ:
-                sym = @symbol(EILSEQ);
-                typ = @symbol(transferFaultSignal);
-                break;
-#endif
-            /*
-             * XPG3 errnos - defined on most systems
-             */
+	    case EILSEQ:
+		sym = @symbol(EILSEQ);
+		typ = @symbol(transferFaultSignal);
+		break;
+#endif
+	    /*
+	     * XPG3 errnos - defined on most systems
+	     */
 #ifdef ENOTBLK
-            case ENOTBLK:
-                sym = @symbol(ENOTBLK);
-                typ = @symbol(inappropriateReferentSignal);
-                break;
+	    case ENOTBLK:
+		sym = @symbol(ENOTBLK);
+		typ = @symbol(inappropriateReferentSignal);
+		break;
 #endif
 #ifdef ETXTBSY
-            case ETXTBSY:
-                sym = @symbol(ETXTBSY);
-                typ = @symbol(inaccessibleSignal);
-                break;
-#endif
-            /*
-             * some others
-             */
+	    case ETXTBSY:
+		sym = @symbol(ETXTBSY);
+		typ = @symbol(inaccessibleSignal);
+		break;
+#endif
+	    /*
+	     * some others
+	     */
 #ifdef EWOULDBLOCK
-            case EWOULDBLOCK:
-                sym = @symbol(EWOULDBLOCK);
-                typ = @symbol(notReadySignal);
-                break;
+	    case EWOULDBLOCK:
+		sym = @symbol(EWOULDBLOCK);
+		typ = @symbol(notReadySignal);
+		break;
 #endif
 #ifdef ENOMSG
-            case ENOMSG:
-                sym = @symbol(ENOMSG);
-                typ = @symbol(noDataSignal);
-                break;
+	    case ENOMSG:
+		sym = @symbol(ENOMSG);
+		typ = @symbol(noDataSignal);
+		break;
 #endif
 #ifdef ELOOP
-            case ELOOP:
-                sym = @symbol(ELOOP);
-                typ = @symbol(rangeErrorSignal);
-                break;
-#endif
-
-            /*
-             * some stream errors
-             */
+	    case ELOOP:
+		sym = @symbol(ELOOP);
+		typ = @symbol(rangeErrorSignal);
+		break;
+#endif
+
+	    /*
+	     * some stream errors
+	     */
 #ifdef ETIME
-            case ETIME:
-                sym = @symbol(ETIME);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case ETIME:
+		sym = @symbol(ETIME);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef ENOSR
-            case ENOSR:
-                sym = @symbol(ENOSR);
-                typ = @symbol(noResourcesSignal);
-                break;
+	    case ENOSR:
+		sym = @symbol(ENOSR);
+		typ = @symbol(noResourcesSignal);
+		break;
 #endif
 #ifdef ENOSTR
-            case ENOSTR:
-                sym = @symbol(ENOSTR);
-                typ = @symbol(inappropriateReferentSignal);
-                break;
+	    case ENOSTR:
+		sym = @symbol(ENOSTR);
+		typ = @symbol(inappropriateReferentSignal);
+		break;
 #endif
 #ifdef ECOMM
-            case ECOMM:
-                sym = @symbol(ECOMM);
-                typ = @symbol(transferFaultSignal);
-                break;
+	    case ECOMM:
+		sym = @symbol(ECOMM);
+		typ = @symbol(transferFaultSignal);
+		break;
 #endif
 #ifdef EPROTO
-            case EPROTO:
-                sym = @symbol(EPROTO);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
-#endif
-            /*
-             * nfs errors
-             */
+	    case EPROTO:
+		sym = @symbol(EPROTO);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
+#endif
+	    /*
+	     * nfs errors
+	     */
 #ifdef ESTALE
-            case ESTALE:
-                sym = @symbol(ESTALE);
-                typ = @symbol(unavailableReferentSignal);
-                break;
+	    case ESTALE:
+		sym = @symbol(ESTALE);
+		typ = @symbol(unavailableReferentSignal);
+		break;
 #endif
 #ifdef EREMOTE
-            case EREMOTE:
-                sym = @symbol(EREMOTE);
-                typ = @symbol(rangeErrorSignal);
-                break;
-#endif
-            /*
-             * some networking errors
-             */
+	    case EREMOTE:
+		sym = @symbol(EREMOTE);
+		typ = @symbol(rangeErrorSignal);
+		break;
+#endif
+	    /*
+	     * some networking errors
+	     */
 #ifdef EINPROGRESS
-            case EINPROGRESS:
-                sym = @symbol(EINPROGRESS);
-                typ = @symbol(operationStartedSignal);
-                break;
+	    case EINPROGRESS:
+		sym = @symbol(EINPROGRESS);
+		typ = @symbol(operationStartedSignal);
+		break;
 #endif
 #ifdef EALREADY
-            case EALREADY:
-                sym = @symbol(EALREADY);
-                typ = @symbol(operationStartedSignal);
-                break;
+	    case EALREADY:
+		sym = @symbol(EALREADY);
+		typ = @symbol(operationStartedSignal);
+		break;
 #endif
 #ifdef ENOTSOCK
-            case ENOTSOCK:
-                sym = @symbol(ENOTSOCK);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case ENOTSOCK:
+		sym = @symbol(ENOTSOCK);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef EDESTADDRREQ
-            case EDESTADDRREQ:
-                sym = @symbol(EDESTADDRREQ);
-                typ = @symbol(underspecifiedSignal);
-                break;
+	    case EDESTADDRREQ:
+		sym = @symbol(EDESTADDRREQ);
+		typ = @symbol(underspecifiedSignal);
+		break;
 #endif
 #ifdef EMSGSIZE
-            case EMSGSIZE:
-                sym = @symbol(EMSGSIZE);
-                typ = @symbol(rangeErrorSignal);
-                break;
+	    case EMSGSIZE:
+		sym = @symbol(EMSGSIZE);
+		typ = @symbol(rangeErrorSignal);
+		break;
 #endif
 #ifdef EPROTOTYPE
-            case EPROTOTYPE:
-                sym = @symbol(EPROTOTYPE);
-                typ = @symbol(wrongSubtypeForOperationSignal);
-                break;
+	    case EPROTOTYPE:
+		sym = @symbol(EPROTOTYPE);
+		typ = @symbol(wrongSubtypeForOperationSignal);
+		break;
 #endif
 #ifdef ENOPROTOOPT
-            case ENOPROTOOPT:
-                sym = @symbol(ENOPROTOOPT);
-                typ = @symbol(unsupportedOperationSignal);
-                break;
+	    case ENOPROTOOPT:
+		sym = @symbol(ENOPROTOOPT);
+		typ = @symbol(unsupportedOperationSignal);
+		break;
 #endif
 #ifdef EPROTONOSUPPORT
-            case EPROTONOSUPPORT:
-                sym = @symbol(EPROTONOSUPPORT);
-                typ = @symbol(unsupportedOperationSignal);
-                break;
+	    case EPROTONOSUPPORT:
+		sym = @symbol(EPROTONOSUPPORT);
+		typ = @symbol(unsupportedOperationSignal);
+		break;
 #endif
 #ifdef ESOCKTNOSUPPORT
-            case ESOCKTNOSUPPORT:
-                sym = @symbol(ESOCKTNOSUPPORT);
-                typ = @symbol(unsupportedOperationSignal);
-                break;
+	    case ESOCKTNOSUPPORT:
+		sym = @symbol(ESOCKTNOSUPPORT);
+		typ = @symbol(unsupportedOperationSignal);
+		break;
 #endif
 #ifdef EOPNOTSUPP
-            case EOPNOTSUPP:
-                sym = @symbol(EOPNOTSUPP);
-                typ = @symbol(inappropriateOperationSignal);
-                break;
+	    case EOPNOTSUPP:
+		sym = @symbol(EOPNOTSUPP);
+		typ = @symbol(inappropriateOperationSignal);
+		break;
 #endif
 #ifdef EPFNOSUPPORT
-            case EPFNOSUPPORT:
-                sym = @symbol(EPFNOSUPPORT);
-                typ = @symbol(unsupportedOperationSignal);
-                break;
+	    case EPFNOSUPPORT:
+		sym = @symbol(EPFNOSUPPORT);
+		typ = @symbol(unsupportedOperationSignal);
+		break;
 #endif
 #ifdef EAFNOSUPPORT
-            case EAFNOSUPPORT:
-                sym = @symbol(EAFNOSUPPORT);
-                typ = @symbol(unsupportedOperationSignal);
-                break;
+	    case EAFNOSUPPORT:
+		sym = @symbol(EAFNOSUPPORT);
+		typ = @symbol(unsupportedOperationSignal);
+		break;
 #endif
 #ifdef EADDRINUSE
-            case EADDRINUSE:
-                sym = @symbol(EADDRINUSE);
-                typ = @symbol(existingReferentSignal);
-                break;
+	    case EADDRINUSE:
+		sym = @symbol(EADDRINUSE);
+		typ = @symbol(existingReferentSignal);
+		break;
 #endif
 #ifdef EADDRNOTAVAIL
-            case EADDRNOTAVAIL:
-                sym = @symbol(EADDRNOTAVAIL);
-                typ = @symbol(noPermissionsSignal);
-                break;
+	    case EADDRNOTAVAIL:
+		sym = @symbol(EADDRNOTAVAIL);
+		typ = @symbol(noPermissionsSignal);
+		break;
 #endif
 #ifdef ETIMEDOUT
-            case ETIMEDOUT:
-                sym = @symbol(ETIMEDOUT);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case ETIMEDOUT:
+		sym = @symbol(ETIMEDOUT);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef ECONNREFUSED
-            case ECONNREFUSED:
-                sym = @symbol(ECONNREFUSED);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case ECONNREFUSED:
+		sym = @symbol(ECONNREFUSED);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef ENETDOWN
-            case ENETDOWN:
-                sym = @symbol(ENETDOWN);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case ENETDOWN:
+		sym = @symbol(ENETDOWN);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef ENETUNREACH
-            case ENETUNREACH:
-                sym = @symbol(ENETUNREACH);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case ENETUNREACH:
+		sym = @symbol(ENETUNREACH);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef ENETRESET
-            case ENETRESET:
-                sym = @symbol(ENETRESET);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case ENETRESET:
+		sym = @symbol(ENETRESET);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef ECONNABORTED
-            case ECONNABORTED:
-                sym = @symbol(ECONNABORTED);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case ECONNABORTED:
+		sym = @symbol(ECONNABORTED);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef ECONNRESET
-            case ECONNRESET:
-                sym = @symbol(ECONNRESET);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case ECONNRESET:
+		sym = @symbol(ECONNRESET);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef EISCONN
-            case EISCONN:
-                sym = @symbol(EISCONN);
-                typ = @symbol(unpreparedOperationSignal);
-                break;
+	    case EISCONN:
+		sym = @symbol(EISCONN);
+		typ = @symbol(unpreparedOperationSignal);
+		break;
 #endif
 #ifdef ENOTCONN
-            case ENOTCONN:
-                sym = @symbol(ENOTCONN);
-                typ = @symbol(unpreparedOperationSignal);
-                break;
+	    case ENOTCONN:
+		sym = @symbol(ENOTCONN);
+		typ = @symbol(unpreparedOperationSignal);
+		break;
 #endif
 #ifdef ESHUTDOWN
-            case ESHUTDOWN:
-                sym = @symbol(ESHUTDOWN);
-                typ = @symbol(unpreparedOperationSignal);
-                break;
+	    case ESHUTDOWN:
+		sym = @symbol(ESHUTDOWN);
+		typ = @symbol(unpreparedOperationSignal);
+		break;
 #endif
 #ifdef EHOSTDOWN
-            case EHOSTDOWN:
-                sym = @symbol(EHOSTDOWN);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case EHOSTDOWN:
+		sym = @symbol(EHOSTDOWN);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef EHOSTUNREACH
-            case EHOSTUNREACH:
-                sym = @symbol(EHOSTUNREACH);
-                typ = @symbol(peerFaultSignal);
-                break;
+	    case EHOSTUNREACH:
+		sym = @symbol(EHOSTUNREACH);
+		typ = @symbol(peerFaultSignal);
+		break;
 #endif
 #ifdef EDQUOT
-            case EDQUOT:
-                sym = @symbol(EDQUOT);
-                typ = @symbol(noResourcesSignal);
-                break;
+	    case EDQUOT:
+		sym = @symbol(EDQUOT);
+		typ = @symbol(noResourcesSignal);
+		break;
 #endif
 
 #ifdef ENOMEDIUM
-            case ENOMEDIUM:
-                sym = @symbol(ENOMEDIUM);
-                typ = @symbol(noResourcesSignal);
-                break;
+	    case ENOMEDIUM:
+		sym = @symbol(ENOMEDIUM);
+		typ = @symbol(noResourcesSignal);
+		break;
 #endif
 #ifdef EMEDIUMTYPE
-            case EMEDIUMTYPE:
-                sym = @symbol(EMEDIUMTYPE);
-                typ = @symbol(noResourcesSignal);
-                break;
-#endif
-
-            default:
-                break;
-        }
+	    case EMEDIUMTYPE:
+		sym = @symbol(EMEDIUMTYPE);
+		typ = @symbol(noResourcesSignal);
+		break;
+#endif
+
+	    default:
+		break;
+	}
     }
 %}.
     holder := OSErrorHolder new.
     sym isNil ifTrue:[
-        sym := #ERROR_OTHER.
-        errNr notNil ifTrue:[
-            "keep symbols as symbols"
-            holder parameter:(errNr isString ifTrue:[errNr] ifFalse:[errNr asString]).
-        ].
+	sym := #ERROR_OTHER.
+	errNr notNil ifTrue:[
+	    "keep symbols as symbols"
+	    holder parameter:(errNr isString ifTrue:[errNr] ifFalse:[errNr asString]).
+	].
     ].
     holder errorSymbol:sym errorCategory:(typ ? #defaultOsErrorSignal).
     ^ holder
@@ -2682,238 +2682,238 @@
      */
 #ifdef EPERM
     if (sym == @symbol(EPERM)) {
-        RETURN ( __mkSmallInteger(EPERM) );
+	RETURN ( __mkSmallInteger(EPERM) );
     }
 #endif
 
 #ifdef ENOENT
     /* ERROR_FILE_NOT_FOUND is originally windows, but referd to in ExternalStream>>#openError: */
     if (sym == @symbol(ENOENT) || sym == @symbol(ERROR_FILE_NOT_FOUND)) {
-        RETURN ( __mkSmallInteger(ENOENT) );
+	RETURN ( __mkSmallInteger(ENOENT) );
     }
 #endif
 
 #ifdef ESRCH
     if (sym == @symbol(ESRCH)) {
-        RETURN ( __mkSmallInteger(ESRCH) );
+	RETURN ( __mkSmallInteger(ESRCH) );
     }
 #endif
 
 #ifdef EINTR
     if (sym == @symbol(EINTR)) {
-        RETURN ( __mkSmallInteger(EINTR) );
+	RETURN ( __mkSmallInteger(EINTR) );
     }
 #endif
 
 #ifdef EIO
     if (sym == @symbol(EIO)) {
-        RETURN ( __mkSmallInteger(EIO) );
+	RETURN ( __mkSmallInteger(EIO) );
     }
 #endif
 
 #ifdef ENXIO
     if (sym == @symbol(ENXIO)) {
-        RETURN ( __mkSmallInteger(ENXIO) );
+	RETURN ( __mkSmallInteger(ENXIO) );
     }
 #endif
 
 #ifdef E2BIG
     if (sym == @symbol(E2BIG)) {
-        RETURN ( __mkSmallInteger(E2BIG) );
+	RETURN ( __mkSmallInteger(E2BIG) );
     }
 #endif
 
 #ifdef ENOEXEC
     if (sym == @symbol(ENOEXEC)) {
-        RETURN ( __mkSmallInteger(ENOEXEC) );
+	RETURN ( __mkSmallInteger(ENOEXEC) );
     }
 #endif
 
 #ifdef ENOTSUP
 # if !defined(EOPNOTSUPP) || (ENOTSUP != EOPNOTSUPP)
     if (sym == @symbol(ENOTSUP)) {
-        RETURN ( __mkSmallInteger(ENOTSUP) );
+	RETURN ( __mkSmallInteger(ENOTSUP) );
     }
 # endif
 #endif
 
 #ifdef EBADF
     if (sym == @symbol(EBADF)) {
-        RETURN ( __mkSmallInteger(EBADF) );
+	RETURN ( __mkSmallInteger(EBADF) );
     }
 #endif
 
 #ifdef ECHILD
     if (sym == @symbol(ECHILD)) {
-        RETURN ( __mkSmallInteger(ECHILD) );
+	RETURN ( __mkSmallInteger(ECHILD) );
     }
 #endif
 
 #if defined(EAGAIN)
     if (sym == @symbol(EAGAIN)) {
-        RETURN ( __mkSmallInteger(EAGAIN) );
+	RETURN ( __mkSmallInteger(EAGAIN) );
     }
 #endif
 
 #ifdef ENOMEM
     if (sym == @symbol(ENOMEM)) {
-        RETURN ( __mkSmallInteger(ENOMEM) );
+	RETURN ( __mkSmallInteger(ENOMEM) );
     }
 #endif
 
 #ifdef EACCES
     if (sym == @symbol(EACCES)) {
-        RETURN ( __mkSmallInteger(EACCES) );
+	RETURN ( __mkSmallInteger(EACCES) );
     }
 #endif
 
 #ifdef EFAULT
     if (sym == @symbol(EFAULT)) {
-        RETURN ( __mkSmallInteger(EFAULT) );
+	RETURN ( __mkSmallInteger(EFAULT) );
     }
 #endif
 
 #ifdef EBUSY
     if (sym == @symbol(EBUSY)) {
-        RETURN ( __mkSmallInteger(EBUSY) );
+	RETURN ( __mkSmallInteger(EBUSY) );
     }
 #endif
 
 #ifdef EXDEV
     if (sym == @symbol(EXDEV)) {
-        RETURN ( __mkSmallInteger(EXDEV) );
+	RETURN ( __mkSmallInteger(EXDEV) );
     }
 #endif
 
 #ifdef ENODEV
     if (sym == @symbol(ENODEV)) {
-        RETURN ( __mkSmallInteger(ENODEV) );
+	RETURN ( __mkSmallInteger(ENODEV) );
     }
 #endif
 
 #ifdef ENOTDIR
     if (sym == @symbol(ENOTDIR)) {
-        RETURN ( __mkSmallInteger(ENOTDIR) );
+	RETURN ( __mkSmallInteger(ENOTDIR) );
     }
 #endif
 
 #ifdef EISDIR
     if (sym == @symbol(EISDIR)) {
-        RETURN ( __mkSmallInteger(EISDIR) );
+	RETURN ( __mkSmallInteger(EISDIR) );
     }
 #endif
 
 #ifdef EINVAL
     if (sym == @symbol(EINVAL)) {
-        RETURN ( __mkSmallInteger(EINVAL) );
+	RETURN ( __mkSmallInteger(EINVAL) );
     }
 #endif
 
 #ifdef ENFILE
     if (sym == @symbol(ENFILE)) {
-        RETURN ( __mkSmallInteger(ENFILE) );
+	RETURN ( __mkSmallInteger(ENFILE) );
     }
 #endif
 
 #ifdef EMFILE
     if (sym == @symbol(EMFILE)) {
-        RETURN ( __mkSmallInteger(EMFILE) );
+	RETURN ( __mkSmallInteger(EMFILE) );
     }
 #endif
 
 #ifdef ENOTTY
     if (sym == @symbol(ENOTTY)) {
-        RETURN ( __mkSmallInteger(ENOTTY) );
+	RETURN ( __mkSmallInteger(ENOTTY) );
     }
 #endif
 
 #ifdef EFBIG
     if (sym == @symbol(EFBIG)) {
-        RETURN ( __mkSmallInteger(EFBIG) );
+	RETURN ( __mkSmallInteger(EFBIG) );
     }
 #endif
 
 #ifdef ENOSPC
     if (sym == @symbol(ENOSPC)) {
-        RETURN ( __mkSmallInteger(ENOSPC) );
+	RETURN ( __mkSmallInteger(ENOSPC) );
     }
 #endif
 
 #ifdef ESPIPE
     if (sym == @symbol(ESPIPE)) {
-        RETURN ( __mkSmallInteger(ESPIPE) );
+	RETURN ( __mkSmallInteger(ESPIPE) );
     }
 #endif
 
 #ifdef EROFS
     if (sym == @symbol(EROFS)) {
-        RETURN ( __mkSmallInteger(EROFS) );
+	RETURN ( __mkSmallInteger(EROFS) );
     }
 #endif
 
 #ifdef EMLINK
     if (sym == @symbol(EMLINK)) {
-        RETURN ( __mkSmallInteger(EMLINK) );
+	RETURN ( __mkSmallInteger(EMLINK) );
     }
 #endif
 
 #ifdef EPIPE
     if (sym == @symbol(EPIPE)) {
-        RETURN ( __mkSmallInteger(EPIPE) );
+	RETURN ( __mkSmallInteger(EPIPE) );
     }
 #endif
 
 #ifdef EDOM
     if (sym == @symbol(EDOM)) {
-        RETURN ( __mkSmallInteger(EDOM) );
+	RETURN ( __mkSmallInteger(EDOM) );
     }
 #endif
 
 #ifdef ERANGE
     if (sym == @symbol(ERANGE)) {
-        RETURN ( __mkSmallInteger(ERANGE) );
+	RETURN ( __mkSmallInteger(ERANGE) );
     }
 #endif
 
 #ifdef EDEADLK
     if (sym == @symbol(EDEADLK)) {
-        RETURN ( __mkSmallInteger(EDEADLK) );
+	RETURN ( __mkSmallInteger(EDEADLK) );
     }
 #endif
 
 #ifdef ENAMETOOLONG
     if (sym == @symbol(ENAMETOOLONG)) {
-        RETURN ( __mkSmallInteger(ENAMETOOLONG) );
+	RETURN ( __mkSmallInteger(ENAMETOOLONG) );
     }
 #endif
 
 #ifdef ENOLCK
     if (sym == @symbol(ENOLCK)) {
-        RETURN ( __mkSmallInteger(ENOLCK) );
+	RETURN ( __mkSmallInteger(ENOLCK) );
     }
 #endif
 
 #ifdef ENOSYS
     if (sym == @symbol(ENOSYS)) {
-        RETURN ( __mkSmallInteger(ENOSYS) );
+	RETURN ( __mkSmallInteger(ENOSYS) );
     }
 #endif
 
 #ifdef ENOTEMPTY
     if (sym == @symbol(ENOTEMPTY)) {
-        RETURN ( __mkSmallInteger(ENOTEMPTY) );
+	RETURN ( __mkSmallInteger(ENOTEMPTY) );
     }
 #endif
 
 #ifdef EEXIST
     if (sym == @symbol(EEXIST)) {
-        RETURN ( __mkSmallInteger(EEXIST) );
+	RETURN ( __mkSmallInteger(EEXIST) );
     }
 #endif
 
 #ifdef EILSEQ
     if (sym == @symbol(EILSEQ)) {
-        RETURN ( __mkSmallInteger(EILSEQ) );
+	RETURN ( __mkSmallInteger(EILSEQ) );
     }
 #endif
 
@@ -2922,13 +2922,13 @@
      */
 #ifdef ENOTBLK
     if (sym == @symbol(ENOTBLK)) {
-        RETURN ( __mkSmallInteger(ENOTBLK) );
+	RETURN ( __mkSmallInteger(ENOTBLK) );
     }
 #endif
 
 #ifdef ETXTBSY
     if (sym == @symbol(ETXTBSY)) {
-        RETURN ( __mkSmallInteger(ETXTBSY) );
+	RETURN ( __mkSmallInteger(ETXTBSY) );
     }
 #endif
 
@@ -2937,25 +2937,25 @@
      */
 #ifdef EWOULDBLOCK
     if (sym == @symbol(EWOULDBLOCK)) {
-        RETURN ( __mkSmallInteger(EWOULDBLOCK) );
+	RETURN ( __mkSmallInteger(EWOULDBLOCK) );
     }
 #endif
 
 #ifdef EOVERFLOW
     if (sym == @symbol(EOVERFLOW)) {
-        RETURN ( __mkSmallInteger(EOVERFLOW) );
+	RETURN ( __mkSmallInteger(EOVERFLOW) );
     }
 #endif
 
 #ifdef ENOMSG
     if (sym == @symbol(ENOMSG)) {
-        RETURN ( __mkSmallInteger(ENOMSG) );
+	RETURN ( __mkSmallInteger(ENOMSG) );
     }
 #endif
 
 #ifdef ELOOP
     if (sym == @symbol(ELOOP)) {
-        RETURN ( __mkSmallInteger(ELOOP) );
+	RETURN ( __mkSmallInteger(ELOOP) );
     }
 #endif
 
@@ -2964,31 +2964,31 @@
      */
 #ifdef ETIME
     if (sym == @symbol(ETIME)) {
-        RETURN ( __mkSmallInteger(ETIME) );
+	RETURN ( __mkSmallInteger(ETIME) );
     }
 #endif
 
 #ifdef ENOSR
     if (sym == @symbol(ENOSR)) {
-        RETURN ( __mkSmallInteger(ENOSR) );
+	RETURN ( __mkSmallInteger(ENOSR) );
     }
 #endif
 
 #ifdef ENOSTR
     if (sym == @symbol(ENOSTR)) {
-        RETURN ( __mkSmallInteger(ENOSTR) );
+	RETURN ( __mkSmallInteger(ENOSTR) );
     }
 #endif
 
 #ifdef ECOMM
     if (sym == @symbol(ECOMM)) {
-        RETURN ( __mkSmallInteger(ECOMM) );
+	RETURN ( __mkSmallInteger(ECOMM) );
     }
 #endif
 
 #ifdef EPROTO
     if (sym == @symbol(EPROTO)) {
-        RETURN ( __mkSmallInteger(EPROTO) );
+	RETURN ( __mkSmallInteger(EPROTO) );
     }
 #endif
 
@@ -2997,13 +2997,13 @@
      */
 #ifdef ESTALE
     if (sym == @symbol(ESTALE)) {
-        RETURN ( __mkSmallInteger(ESTALE) );
+	RETURN ( __mkSmallInteger(ESTALE) );
     }
 #endif
 
 #ifdef EREMOTE
     if (sym == @symbol(EREMOTE)) {
-        RETURN ( __mkSmallInteger(EREMOTE) );
+	RETURN ( __mkSmallInteger(EREMOTE) );
     }
 #endif
 
@@ -3012,178 +3012,178 @@
      */
 #ifdef EINPROGRESS
     if (sym == @symbol(EINPROGRESS)) {
-        RETURN ( __mkSmallInteger(EINPROGRESS) );
+	RETURN ( __mkSmallInteger(EINPROGRESS) );
     }
 #endif
 
 #ifdef EALREADY
     if (sym == @symbol(EALREADY)) {
-        RETURN ( __mkSmallInteger(EALREADY) );
+	RETURN ( __mkSmallInteger(EALREADY) );
     }
 #endif
 
 #ifdef ENOTSOCK
     if (sym == @symbol(ENOTSOCK)) {
-        RETURN ( __mkSmallInteger(ENOTSOCK) );
+	RETURN ( __mkSmallInteger(ENOTSOCK) );
     }
 #endif
 
 #ifdef EDESTADDRREQ
     if (sym == @symbol(EDESTADDRREQ)) {
-        RETURN ( __mkSmallInteger(EDESTADDRREQ) );
+	RETURN ( __mkSmallInteger(EDESTADDRREQ) );
     }
 #endif
 
 #ifdef EMSGSIZE
     if (sym == @symbol(EMSGSIZE)) {
-        RETURN ( __mkSmallInteger(EMSGSIZE) );
+	RETURN ( __mkSmallInteger(EMSGSIZE) );
     }
 #endif
 
 #ifdef EPROTOTYPE
     if (sym == @symbol(EPROTOTYPE)) {
-        RETURN ( __mkSmallInteger(EPROTOTYPE) );
+	RETURN ( __mkSmallInteger(EPROTOTYPE) );
     }
 #endif
 
 #ifdef ENOPROTOOPT
     if (sym == @symbol(ENOPROTOOPT)) {
-        RETURN ( __mkSmallInteger(ENOPROTOOPT) );
+	RETURN ( __mkSmallInteger(ENOPROTOOPT) );
     }
 #endif
 
 #ifdef EPROTONOSUPPORT
     if (sym == @symbol(EPROTONOSUPPORT)) {
-        RETURN ( __mkSmallInteger(EPROTONOSUPPORT) );
+	RETURN ( __mkSmallInteger(EPROTONOSUPPORT) );
     }
 #endif
 
 #ifdef ESOCKTNOSUPPORT
     if (sym == @symbol(ESOCKTNOSUPPORT)) {
-        RETURN ( __mkSmallInteger(ESOCKTNOSUPPORT) );
+	RETURN ( __mkSmallInteger(ESOCKTNOSUPPORT) );
     }
 #endif
 
 #ifdef EOPNOTSUPP
     if (sym == @symbol(EOPNOTSUPP)) {
-        RETURN ( __mkSmallInteger(EOPNOTSUPP) );
+	RETURN ( __mkSmallInteger(EOPNOTSUPP) );
     }
 #endif
 
 #ifdef EPFNOSUPPORT
     if (sym == @symbol(EPFNOSUPPORT)) {
-        RETURN ( __mkSmallInteger(EPFNOSUPPORT) );
+	RETURN ( __mkSmallInteger(EPFNOSUPPORT) );
     }
 #endif
 
 #ifdef EAFNOSUPPORT
     if (sym == @symbol(EAFNOSUPPORT)) {
-        RETURN ( __mkSmallInteger(EAFNOSUPPORT) );
+	RETURN ( __mkSmallInteger(EAFNOSUPPORT) );
     }
 #endif
 
 #ifdef EADDRINUSE
     if (sym == @symbol(EADDRINUSE)) {
-        RETURN ( __mkSmallInteger(EADDRINUSE) );
+	RETURN ( __mkSmallInteger(EADDRINUSE) );
     }
 #endif
 
 #ifdef EADDRNOTAVAIL
     if (sym == @symbol(EADDRNOTAVAIL)) {
-        RETURN ( __mkSmallInteger(EADDRNOTAVAIL) );
+	RETURN ( __mkSmallInteger(EADDRNOTAVAIL) );
     }
 #endif
 
 #ifdef ETIMEDOUT
     if (sym == @symbol(ETIMEDOUT)) {
-        RETURN ( __mkSmallInteger(ETIMEDOUT) );
+	RETURN ( __mkSmallInteger(ETIMEDOUT) );
     }
 #endif
 
 #ifdef ECONNREFUSED
     if (sym == @symbol(ECONNREFUSED)) {
-        RETURN ( __mkSmallInteger(ECONNREFUSED) );
+	RETURN ( __mkSmallInteger(ECONNREFUSED) );
     }
 #endif
 
 #ifdef ENETDOWN
     if (sym == @symbol(ENETDOWN)) {
-        RETURN ( __mkSmallInteger(ENETDOWN) );
+	RETURN ( __mkSmallInteger(ENETDOWN) );
     }
 #endif
 
 #ifdef ENETUNREACH
     if (sym == @symbol(ENETUNREACH)) {
-        RETURN ( __mkSmallInteger(ENETUNREACH) );
+	RETURN ( __mkSmallInteger(ENETUNREACH) );
     }
 #endif
 
 #ifdef ENETRESET
     if (sym == @symbol(ENETRESET)) {
-        RETURN ( __mkSmallInteger(ENETRESET) );
+	RETURN ( __mkSmallInteger(ENETRESET) );
     }
 #endif
 
 #ifdef ECONNABORTED
     if (sym == @symbol(ECONNABORTED)) {
-        RETURN ( __mkSmallInteger(ECONNABORTED) );
+	RETURN ( __mkSmallInteger(ECONNABORTED) );
     }
 #endif
 
 #ifdef ECONNRESET
     if (sym == @symbol(ECONNRESET)) {
-        RETURN ( __mkSmallInteger(ECONNRESET) );
+	RETURN ( __mkSmallInteger(ECONNRESET) );
     }
 #endif
 
 #ifdef EISCONN
     if (sym == @symbol(EISCONN)) {
-        RETURN ( __mkSmallInteger(EISCONN) );
+	RETURN ( __mkSmallInteger(EISCONN) );
     }
 #endif
 
 #ifdef ENOTCONN
     if (sym == @symbol(ENOTCONN)) {
-        RETURN ( __mkSmallInteger(ENOTCONN) );
+	RETURN ( __mkSmallInteger(ENOTCONN) );
     }
 #endif
 
 #ifdef ESHUTDOWN
     if (sym == @symbol(ESHUTDOWN)) {
-        RETURN ( __mkSmallInteger(ESHUTDOWN) );
+	RETURN ( __mkSmallInteger(ESHUTDOWN) );
     }
 #endif
 
 #ifdef EHOSTDOWN
     if (sym == @symbol(EHOSTDOWN)) {
-        RETURN ( __mkSmallInteger(EHOSTDOWN) );
+	RETURN ( __mkSmallInteger(EHOSTDOWN) );
     }
 #endif
 
 #ifdef EHOSTUNREACH
     if (sym == @symbol(EHOSTUNREACH)) {
-        RETURN ( __mkSmallInteger(EHOSTUNREACH) );
+	RETURN ( __mkSmallInteger(EHOSTUNREACH) );
     }
 #endif
 
 #ifdef EREMOTEIO
     if (sym == @symbol(EREMOTEIO)) {
-        RETURN ( __mkSmallInteger(EREMOTEIO) );
+	RETURN ( __mkSmallInteger(EREMOTEIO) );
     }
 #endif
 #ifdef EDQUOT
     if (sym == @symbol(EDQUOT)) {
-        RETURN ( __mkSmallInteger(EDQUOT) );
+	RETURN ( __mkSmallInteger(EDQUOT) );
     }
 #endif
 #ifdef ENOMEDIUM
     if (sym == @symbol(ENOMEDIUM)) {
-        RETURN ( __mkSmallInteger(ENOMEDIUM) );
+	RETURN ( __mkSmallInteger(ENOMEDIUM) );
     }
 #endif
 #ifdef EMEDIUMTYPE
     if (sym == @symbol(EMEDIUMTYPE)) {
-        RETURN ( __mkSmallInteger(EMEDIUMTYPE) );
+	RETURN ( __mkSmallInteger(EMEDIUMTYPE) );
     }
 #endif
 
@@ -3204,29 +3204,29 @@
     "Internal lowLevel entry for combined fork & exec;
 
      If fork is false (chain a command):
-         execute the OS command specified by the argument, aCommandPath, with
-         arguments in argArray (no arguments, if nil).
-         If successful, this method does not return and smalltalk is gone.
-         If not successful, it does return.
-         Normal use is with forkForCommand.
+	 execute the OS command specified by the argument, aCommandPath, with
+	 arguments in argArray (no arguments, if nil).
+	 If successful, this method does not return and smalltalk is gone.
+	 If not successful, it does return.
+	 Normal use is with forkForCommand.
 
      If fork is true (subprocess command execution):
-        fork a child to do the above.
-        The process id of the child process is returned; nil if the fork failed.
+	fork a child to do the above.
+	The process id of the child process is returned; nil if the fork failed.
 
      fdColl contains the filedescriptors, to be used for the child (if fork is true).
-        fdArray[1] = 15 -> use fd 15 as stdin.
-        If an element of the array is set to nil, the corresponding filedescriptor
-        will be closed for the child.
-        fdArray[1] == StdIn for child
-        fdArray[2] == StdOut for child
-        fdArray[3] == StdErr for child
-        on VMS, these must be channels as returned by createMailBox.
-        All filedescriptors not present in fdColl will be closed for the child.
+	fdArray[1] = 15 -> use fd 15 as stdin.
+	If an element of the array is set to nil, the corresponding filedescriptor
+	will be closed for the child.
+	fdArray[1] == StdIn for child
+	fdArray[2] == StdOut for child
+	fdArray[3] == StdErr for child
+	on VMS, these must be channels as returned by createMailBox.
+	All filedescriptors not present in fdColl will be closed for the child.
 
      If newPgrp is true, the subprocess will be established in a new process group.
-        The processgroup will be equal to id.
-        newPgrp is not used on WIN32 and VMS systems.
+	The processgroup will be equal to id.
+	newPgrp is not used on WIN32 and VMS systems.
 
      environmentDictionary specifies environment variables which are passed differently from
      the current environment. If non-nil, it must be a dictionary providing
@@ -3234,33 +3234,33 @@
      To pass a variable as empty (i.e. unset), pass a nil value.
 
      Notice: this used to be two separate ST-methods; however, in order to use
-            vfork on some machines, it had to be merged into one, to avoid write
-            accesses to ST/X memory from the vforked-child.
-            The code below only does read accesses."
+	    vfork on some machines, it had to be merged into one, to avoid write
+	    accesses to ST/X memory from the vforked-child.
+	    The code below only does read accesses."
 
     |envArray argArray fdArray dirName cnt aCommandPath|
 
     environmentDictionary notEmptyOrNil ifTrue:[
-        envArray := Array new:environmentDictionary size.
-        cnt := 1.
-        environmentDictionary keysAndValuesDo:[:key :val |
-            val isNil ifTrue:[
-                envArray at:cnt put:((self encodePath:key), '=')
-            ] ifFalse:[
-                envArray at:cnt put:((self encodePath:key), '=', (self encodePath:val asString))
-            ].
-            cnt := cnt + 1.
-        ].
+	envArray := Array new:environmentDictionary size.
+	cnt := 1.
+	environmentDictionary keysAndValuesDo:[:key :val |
+	    val isNil ifTrue:[
+		envArray at:cnt put:((self encodePath:key), '=')
+	    ] ifFalse:[
+		envArray at:cnt put:((self encodePath:key), '=', (self encodePath:val asString))
+	    ].
+	    cnt := cnt + 1.
+	].
     ].
     argColl notNil ifTrue:[
-        argArray := argColl asArray collect:[:eachArg| self encodePath:eachArg].
+	argArray := argColl asArray collect:[:eachArg| self encodePath:eachArg].
     ].
     fdColl notNil ifTrue:[
-        fdArray := fdColl asArray
+	fdArray := fdColl asArray
     ].
     aDirectory notNil ifTrue:[
-        dirName := aDirectory asFilename osNameForFile.
-        dirName := self encodePath:dirName.
+	dirName := aDirectory asFilename osNameForFile.
+	dirName := self encodePath:dirName.
     ].
     aCommandPath := self encodePath:aCommandPathArg.
 
@@ -3276,210 +3276,210 @@
     char **_env, **_nEnv;
 
     if (__isStringLike(aCommandPath) &&
-        ((argArray == nil) || __isArrayLike(argArray)) &&
-        ((fdArray == nil) || __isArrayLike(fdArray))
+	((argArray == nil) || __isArrayLike(argArray)) &&
+	((fdArray == nil) || __isArrayLike(fdArray))
     ) {
-        nargs = argArray == nil ? 0 : __arraySize(argArray);
-        argv = (char **) malloc(sizeof(char *) * (nargs + 1));
-        if (argv) {
-            int nOldEnv, nNewEnv;
-
-            for (i=0; i < nargs; i++) {
-                arg = __ArrayInstPtr(argArray)->a_element[i];
-                if (__isStringLike(arg)) {
-                    argv[i] = (char *) __stringVal(arg);
-                } else {
-                    argv[i] = "";
-                }
-            }
-            argv[i] = NULL;
-
-            /*
-             * number of new items in environment ..
-             */
-            nNewEnv = 0;
-            if ((envArray != nil) && __isArrayLike(envArray)) {
-                nNewEnv = __arraySize(envArray);
-            }
-
-            if (nNewEnv == 0) {
-                _nEnv = environ;
-            } else {
-                _env = environ;
-                /*
-                 * get size of environment
-                 */
-                nOldEnv = 0;
-                if (_env) {
-                    while (*_env) {
-                        nOldEnv++;
-                        _env++;
-                    }
-                }
-
-                /*
-                 * generate a new environment
-                 * I have not found a spec which defines if
-                 * items at the end overwrite previous definitions,
-                 * or if the first encountered definition is valid.
-                 * To be prepared for any case, simply add the new definitions
-                 * at both ends - that should do it in any case.
-                 * Someone with more know-how may want to fix this.
-                 * getenv() searches for the first entry.
-                 * But maybe someone creates a Dictionary from the environment.
-                 * In this case the last entry would overwrite previous entries.
-                 */
-                _nEnv = (char **)malloc(sizeof(char *) * (nNewEnv + nOldEnv + nNewEnv + 1));
-                if (_nEnv) {
-                    char **eO, **eN;
-
-                    eN = _nEnv;
-                    if (nNewEnv) {
-                        /*
-                         * add new items at the front ...
-                         */
-                        int i;
-                        OBJ *t;
-
-                        for (i=0, t = __arrayVal(envArray);
-                             i < __arraySize(envArray);
-                             i++, t++) {
-
-                            if (__isStringLike(*t)) {
-                                *eN++ = (char *)__stringVal(*t);
-                            }
-                        }
-                    }
-
-                    if (nOldEnv) {
-                        /*
-                         * append old environment
-                         */
-                        for (eO = environ; *eO; *eN++ = *eO++)
-                            continue;
-                    }
-
-                    if (nNewEnv) {
-                        /*
-                         * append new items again at the end
-                         */
-                        for (eO = _nEnv, i=0; i<nNewEnv; i++) {
-                            *eN++ = *eO++;
-                        }
-                    }
-                    *eN = NULL;
-                }
-            }
-
-            if (doFork == true) {
-                /*
-                 * fork a subprocess.
-                 */
-                int nfd;
-
-                nfd = fdArray == nil ? 0 : __arraySize(fdArray);
-                id = FORK ();
-                if (id == 0) {
-                    /*
-                    ** In child.
-                    ** first: dup filedescriptors.
-                    */
-                    for (i = 0; i < nfd; i++) {
-                        OBJ fd;
-                        int rslt;
-
-                        fd = __arrayVal(fdArray)[i];
-                        if (__isSmallInteger(fd) && (__intVal(fd) != i)) {
-                            do {
-                                rslt = dup2(__intVal(fd), i);
-                            } while ((rslt < 0) && (errno == EINTR));
-                        }
-                    }
-                    /*
-                    ** Second: close descriptors
-                    **         marked as unwanted
-                    ** (extra loop to allow duping of low filedescriptor numbers to
-                    **  higher fd numbers)
-                    */
-                    for (i = 0; i < nfd; i++) {
-                        if (__arrayVal(fdArray)[i] == nil) {
-                            close(i);
-                        }
-                    }
-
-                    /*
-                    ** third: close all filedescriptors larger
-                    ** then the explicitely closed or duped
-                    ** filedescriptors
-                    */
+	nargs = argArray == nil ? 0 : __arraySize(argArray);
+	argv = (char **) malloc(sizeof(char *) * (nargs + 1));
+	if (argv) {
+	    int nOldEnv, nNewEnv;
+
+	    for (i=0; i < nargs; i++) {
+		arg = __ArrayInstPtr(argArray)->a_element[i];
+		if (__isStringLike(arg)) {
+		    argv[i] = (char *) __stringVal(arg);
+		} else {
+		    argv[i] = "";
+		}
+	    }
+	    argv[i] = NULL;
+
+	    /*
+	     * number of new items in environment ..
+	     */
+	    nNewEnv = 0;
+	    if ((envArray != nil) && __isArrayLike(envArray)) {
+		nNewEnv = __arraySize(envArray);
+	    }
+
+	    if (nNewEnv == 0) {
+		_nEnv = environ;
+	    } else {
+		_env = environ;
+		/*
+		 * get size of environment
+		 */
+		nOldEnv = 0;
+		if (_env) {
+		    while (*_env) {
+			nOldEnv++;
+			_env++;
+		    }
+		}
+
+		/*
+		 * generate a new environment
+		 * I have not found a spec which defines if
+		 * items at the end overwrite previous definitions,
+		 * or if the first encountered definition is valid.
+		 * To be prepared for any case, simply add the new definitions
+		 * at both ends - that should do it in any case.
+		 * Someone with more know-how may want to fix this.
+		 * getenv() searches for the first entry.
+		 * But maybe someone creates a Dictionary from the environment.
+		 * In this case the last entry would overwrite previous entries.
+		 */
+		_nEnv = (char **)malloc(sizeof(char *) * (nNewEnv + nOldEnv + nNewEnv + 1));
+		if (_nEnv) {
+		    char **eO, **eN;
+
+		    eN = _nEnv;
+		    if (nNewEnv) {
+			/*
+			 * add new items at the front ...
+			 */
+			int i;
+			OBJ *t;
+
+			for (i=0, t = __arrayVal(envArray);
+			     i < __arraySize(envArray);
+			     i++, t++) {
+
+			    if (__isStringLike(*t)) {
+				*eN++ = (char *)__stringVal(*t);
+			    }
+			}
+		    }
+
+		    if (nOldEnv) {
+			/*
+			 * append old environment
+			 */
+			for (eO = environ; *eO; *eN++ = *eO++)
+			    continue;
+		    }
+
+		    if (nNewEnv) {
+			/*
+			 * append new items again at the end
+			 */
+			for (eO = _nEnv, i=0; i<nNewEnv; i++) {
+			    *eN++ = *eO++;
+			}
+		    }
+		    *eN = NULL;
+		}
+	    }
+
+	    if (doFork == true) {
+		/*
+		 * fork a subprocess.
+		 */
+		int nfd;
+
+		nfd = fdArray == nil ? 0 : __arraySize(fdArray);
+		id = FORK ();
+		if (id == 0) {
+		    /*
+		    ** In child.
+		    ** first: dup filedescriptors.
+		    */
+		    for (i = 0; i < nfd; i++) {
+			OBJ fd;
+			int rslt;
+
+			fd = __arrayVal(fdArray)[i];
+			if (__isSmallInteger(fd) && (__intVal(fd) != i)) {
+			    do {
+				rslt = dup2(__intVal(fd), i);
+			    } while ((rslt < 0) && (errno == EINTR));
+			}
+		    }
+		    /*
+		    ** Second: close descriptors
+		    **         marked as unwanted
+		    ** (extra loop to allow duping of low filedescriptor numbers to
+		    **  higher fd numbers)
+		    */
+		    for (i = 0; i < nfd; i++) {
+			if (__arrayVal(fdArray)[i] == nil) {
+			    close(i);
+			}
+		    }
+
+		    /*
+		    ** third: close all filedescriptors larger
+		    ** then the explicitely closed or duped
+		    ** filedescriptors
+		    */
 #ifndef OPEN_MAX
 # define OPEN_MAX       256
 #endif
-                    for ( ;i < OPEN_MAX; i++) {
-                        close(i);
-                    }
-
-                    if (newPgrp == true) {
-#ifndef NEXT
-                        setsid();
+		    for ( ;i < OPEN_MAX; i++) {
+			close(i);
+		    }
+
+		    if (newPgrp == true) {
+#ifndef __NEXT__
+			setsid();
 #endif
 #if defined(TIOCSCTTY)
-                        ioctl(0, TIOCSCTTY, 0) ;
+			ioctl(0, TIOCSCTTY, 0) ;
 #endif
 
 #if defined(TIOCSPGRP)
-                        {
-                            int pgrp = getpid();
-
-                            ioctl(0, TIOCSPGRP, (char *)&pgrp);
-                        }
+			{
+			    int pgrp = getpid();
+
+			    ioctl(0, TIOCSPGRP, (char *)&pgrp);
+			}
 #endif
 #if defined(_POSIX_JOB_CONTROL) || defined(__osx__)
-                        (void) setpgid(0, 0);
+			(void) setpgid(0, 0);
 #else
 # if defined(BSD) || defined(LINUX) || defined(__osx__)
-                        (void) setpgrp(0);
-# endif
-#endif
-                    }
-
-                    if (dirName == nil || chdir((char *)__stringVal(dirName)) == 0) {
-                        execve((char *)__stringVal(aCommandPath), argv, _nEnv);
-                    }
-                    /* reached if chdir failed or aCommandPath cannot be executed */
-                    _exit(127);                 /* POSIX 2 compatible exit value */
-                }
-            } else {
-                /*
-                 * no subprocess (i.e. transfer to another program)
-                 */
-                if (dirName == nil || chdir((char *)__stringVal(dirName)) == 0) {
-                    execve((char *)__stringVal(aCommandPath), argv, _nEnv);
-                }
-                /*
-                 * reached if chdir failed or command-path cannot be executed
-                 */
-                id = -1;
-            }
-
-            if (nNewEnv && (_nEnv != NULL)) {
-                /*
-                 * free new environment stuff
-                 */
-                free(_nEnv);
-            }
-
-            free(argv);
-
-            /*
-             * In parent: succes or failure
-             */
-            if (id == -1) {
-                RETURN (nil);
-            } else {
-                RETURN (__mkSmallInteger(id));
-            }
-        }
+			(void) setpgrp(0);
+# endif
+#endif
+		    }
+
+		    if (dirName == nil || chdir((char *)__stringVal(dirName)) == 0) {
+			execve((char *)__stringVal(aCommandPath), argv, _nEnv);
+		    }
+		    /* reached if chdir failed or aCommandPath cannot be executed */
+		    _exit(127);                 /* POSIX 2 compatible exit value */
+		}
+	    } else {
+		/*
+		 * no subprocess (i.e. transfer to another program)
+		 */
+		if (dirName == nil || chdir((char *)__stringVal(dirName)) == 0) {
+		    execve((char *)__stringVal(aCommandPath), argv, _nEnv);
+		}
+		/*
+		 * reached if chdir failed or command-path cannot be executed
+		 */
+		id = -1;
+	    }
+
+	    if (nNewEnv && (_nEnv != NULL)) {
+		/*
+		 * free new environment stuff
+		 */
+		free(_nEnv);
+	    }
+
+	    free(argv);
+
+	    /*
+	     * In parent: succes or failure
+	     */
+	    if (id == -1) {
+		RETURN (nil);
+	    } else {
+		RETURN (__mkSmallInteger(id));
+	    }
+	}
     }
 %}.
     "
@@ -3495,9 +3495,9 @@
 
      id := OperatingSystem fork.
      id == 0 ifTrue:[
-        'I am the child'.
-        OperatingSystem exec:'/bin/ls' withArguments:#('ls' '/tmp').
-        'not reached'.
+	'I am the child'.
+	OperatingSystem exec:'/bin/ls' withArguments:#('ls' '/tmp').
+	'not reached'.
      ]
     "
     "
@@ -3505,11 +3505,11 @@
 
      id := OperatingSystem fork.
      id == 0 ifTrue:[
-        'I am the child'.
-        OperatingSystem
-           exec:'/bin/sh'
-           withArguments:#('sh' '-c' 'sleep 2;echo 1;sleep 2;echo 2').
-        'not reached'.
+	'I am the child'.
+	OperatingSystem
+	   exec:'/bin/sh'
+	   withArguments:#('sh' '-c' 'sleep 2;echo 1;sleep 2;echo 2').
+	'not reached'.
      ].
      id printNL.
      (Delay forSeconds:3.5) wait.
@@ -3551,9 +3551,9 @@
      t1 := Timestamp now.
      id := OperatingSystem fork.
      id == 0 ifTrue:[
-         'Child t=' print. (Timestamp now - t1) printCR.
-         'I am the child process' printCR.
-         OperatingSystem exit
+	 'Child t=' print. (Timestamp now - t1) printCR.
+	 'I am the child process' printCR.
+	 OperatingSystem exit
      ].
      'Parent t=' print. (Timestamp now - t1) printCR.
     "
@@ -3570,14 +3570,14 @@
      The third element is nil - here for windows compatibility (showWindow in windows)"
 
     aCommandStringOrArray isNonByteCollection ifTrue:[
-        "if an array is passed, the command string has already been parsed an no shell is invoked"
-        ^ Array with:aCommandStringOrArray first with:aCommandStringOrArray with:nil.
+	"if an array is passed, the command string has already been parsed an no shell is invoked"
+	^ Array with:aCommandStringOrArray first with:aCommandStringOrArray with:nil.
     ].
 
 
     aCommandStringOrArray isEmptyOrNil ifTrue:[
-        "start a shell reading commands from stdin"
-        ^ Array with:'/bin/sh' with:#() with:nil.
+	"start a shell reading commands from stdin"
+	^ Array with:'/bin/sh' with:#() with:nil.
     ].
 
     "/
@@ -3602,10 +3602,10 @@
      Notice: we cannot depend on /proc to be present (actually only is on linux)"
     info := '/proc/self/exe' asFilename linkInfo.
     info notNil ifTrue:[
-        path := info path.
-        path notEmptyOrNil ifTrue:[
-            ^ path
-        ].
+	path := info path.
+	path notEmptyOrNil ifTrue:[
+	    ^ path
+	].
      ].
 
     "Fall back - do it the hard way"
@@ -3626,44 +3626,44 @@
 
     commandFilename := aCommand asFilename.
     commandFilename isAbsolute ifTrue:[
-        "/ something like "/foo/...", tried path is it
-        commandFilename isExecutable ifFalse:[^ nil].
-        ^ commandFilename pathName
+	"/ something like "/foo/...", tried path is it
+	commandFilename isExecutable ifFalse:[^ nil].
+	^ commandFilename pathName
     ].
     commandFilename isExplicitRelative ifTrue:[
-        "/ something like "../foo/...", tried path resolved relative to the current directory
-        commandFilename isExecutable ifFalse:[^ nil].
-         ^ commandFilename pathName
+	"/ something like "../foo/...", tried path resolved relative to the current directory
+	commandFilename isExecutable ifFalse:[^ nil].
+	 ^ commandFilename pathName
     ].
     (aCommand includes:$/) ifTrue:[
-        "/ something like "smalltalk/stx", tried path is relative to the current directory
-        (f := ('./',aCommand) asFilename) isExecutable ifTrue:[
-            ^ f pathName
-        ].
-        ^ nil
+	"/ something like "smalltalk/stx", tried path is relative to the current directory
+	(f := ('./',aCommand) asFilename) isExecutable ifTrue:[
+	    ^ f pathName
+	].
+	^ nil
     ].
 
     "/ command is a single word, not relative and not absolute.
     "/ search along PATH environment variable to see what a shell would do.
     path := self getEnvironment:'PATH'.
     path notEmptyOrNil ifTrue:[
-        (path asCollectionOfSubstringsSeparatedBy:self pathSeparator) do:[:eachPathComponent |
-            eachPathComponent isEmpty ifTrue:[
-                f := commandFilename
-            ] ifFalse:[
-                f := eachPathComponent asFilename construct:aCommand.
-            ].
-            self executableFileExtensions do:[:eachExtension |
-                eachExtension notEmpty ifTrue:[
-                    fExt := f addSuffix:eachExtension.
-                ] ifFalse:[
-                    fExt := f.
-                ].
-                fExt isExecutable ifTrue:[
-                    ^ fExt pathName
-                ].
-            ].
-        ].
+	(path asCollectionOfSubstringsSeparatedBy:self pathSeparator) do:[:eachPathComponent |
+	    eachPathComponent isEmpty ifTrue:[
+		f := commandFilename
+	    ] ifFalse:[
+		f := eachPathComponent asFilename construct:aCommand.
+	    ].
+	    self executableFileExtensions do:[:eachExtension |
+		eachExtension notEmpty ifTrue:[
+		    fExt := f addSuffix:eachExtension.
+		] ifFalse:[
+		    fExt := f.
+		].
+		fExt isExecutable ifTrue:[
+		    ^ fExt pathName
+		].
+	    ].
+	].
     ].
     ^ nil
 
@@ -3690,11 +3690,11 @@
 
 %{
      if (__isSmallInteger(anInteger)) {
-        if (@global(ExternalStream:FileOpenTrace) == true) {
-            fprintf(stderr, "close [UnixOp] fd=%d\n", (int)__intVal(anInteger));
-        }
-        close(__intVal(anInteger));
-        RETURN(self);
+	if (@global(ExternalStream:FileOpenTrace) == true) {
+	    fprintf(stderr, "close [UnixOp] fd=%d\n", (int)__intVal(anInteger));
+	}
+	close(__intVal(anInteger));
+	RETURN(self);
      }
 %}.
      ^ self primitiveFailed.
@@ -3715,14 +3715,14 @@
       && __isSmallInteger(outFd)
       && __isSmallInteger(startIdx)
       && __isSmallInteger(count)) {
-        off_t startOffset = __intVal(startIdx);
-        ssize_t nWritten;
-
-        nWritten = sendfile(__intVal(outFd), __intVal(inFd), &startOffset, __intVal(count));
-        if (nWritten < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-        }
-        RETURN (__mkSmallInteger(nWritten));
+	off_t startOffset = __intVal(startIdx);
+	ssize_t nWritten;
+
+	nWritten = sendfile(__intVal(outFd), __intVal(inFd), &startOffset, __intVal(count));
+	if (nWritten < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	}
+	RETURN (__mkSmallInteger(nWritten));
      }
 #endif
 %}.
@@ -3757,10 +3757,10 @@
 
 %{
     if (__isStringLike(encodedPathName) && __isSmallInteger(umask)) {
-        if (mkdir(__stringVal(encodedPathName), __smallIntegerVal(umask)) >= 0) {
-            RETURN(nil);
-        }
-        error = __mkSmallInteger(errno);
+	if (mkdir(__stringVal(encodedPathName), __smallIntegerVal(umask)) >= 0) {
+	    RETURN(nil);
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
     "/ could not create - if it already existed this is ok
@@ -3768,8 +3768,8 @@
     (self isDirectory:aPathName) ifTrue:[^ nil].
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     ^ self primitiveFailed
@@ -3810,21 +3810,21 @@
     int ret;
 
     if (__isStringLike(encodedOldPathName) && __isStringLike(encodedNewPathName)) {
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = link((char *) __stringVal(encodedOldPathName), (char *) __stringVal(encodedNewPathName));
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-        if (ret >= 0) {
-            RETURN (nil);
-        }
-        error = __mkSmallInteger(errno);
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = link((char *) __stringVal(encodedOldPathName), (char *) __stringVal(encodedNewPathName));
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+	if (ret >= 0) {
+	    RETURN (nil);
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     "/
@@ -3851,29 +3851,29 @@
     int ret;
 
     if (__isStringLike(encodedOldPathName) && __isStringLike(encodedNewPathName)) {
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = symlink((char *) __stringVal(encodedOldPathName), (char *) __stringVal(encodedNewPathName));
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-        if (ret >= 0) {
-            RETURN (nil);
-        }
-        error = __mkSmallInteger(errno);
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = symlink((char *) __stringVal(encodedOldPathName), (char *) __stringVal(encodedNewPathName));
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+	if (ret >= 0) {
+	    RETURN (nil);
+	}
+	error = __mkSmallInteger(errno);
     }
 #endif
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     (encodedOldPathName isString not or:[encodedNewPathName isString not]) ifTrue:[
-        "/
-        "/ bad argument(s) given
-        "/
-        ^ self primitiveFailed
+	"/
+	"/ bad argument(s) given
+	"/
+	^ self primitiveFailed
     ].
 
     "/
@@ -3891,13 +3891,13 @@
     "open a file, return an os specific fileHandle.
      openmode is a symbol defining the way to open
      valid modes are:
-        #O_RDONLY
-        #O_RDWR
-        #O_WRONLY
-        #O_CREAT
-        #O_APPEND
-        #O_SYNC
-        #O_LARGEFILE
+	#O_RDONLY
+	#O_RDWR
+	#O_WRONLY
+	#O_CREAT
+	#O_APPEND
+	#O_SYNC
+	#O_LARGEFILE
 
      This is a private entry, but maybe useful to open/create a file in a special mode,
      which is proprietrary to the operatingSystem."
@@ -3914,55 +3914,55 @@
     int n;
 
     if (!__isStringLike(encodedPathName)) {
-        error = @symbol(badArgument1);
-        goto err;
+	error = @symbol(badArgument1);
+	goto err;
     }
     if (!__isArrayLike(attributes)) {
-        error = @symbol(badArgument2);
-        goto err;
+	error = @symbol(badArgument2);
+	goto err;
     }
     if (modeInteger == nil) {
-        mode = 0644;
+	mode = 0644;
     } else if (__isSmallInteger(modeInteger)) {
-        mode = __intVal(modeInteger);
+	mode = __intVal(modeInteger);
     } else {
-        error = @symbol(badArgument3);
-        goto err;
+	error = @symbol(badArgument3);
+	goto err;
     }
 
     nAttributes = __arraySize(attributes);
     for (n = 0, ap = __arrayVal(attributes); n < nAttributes; n++) {
-        OBJ attribute = ap[n];
-
-        if (attribute == @symbol(O_RDONLY)) {
-            openFlags |= O_RDONLY;
-        } else if (attribute == @symbol(O_RDWR)) {
-            openFlags |= O_RDWR;
-        } else if (attribute == @symbol(O_WRONLY)) {
-            openFlags |= O_WRONLY;
-        } else if (attribute == @symbol(O_CREAT)) {
-            openFlags |= O_CREAT;
-        } else if (attribute == @symbol(O_APPEND)) {
-            openFlags |= O_APPEND;
-        } else if (attribute == @symbol(O_EXCL)) {
-            openFlags |= O_EXCL;
-        } else if (attribute == @symbol(O_TRUNC)) {
-            openFlags |= O_TRUNC;
-        } else if (attribute == @symbol(O_LARGEFILE)) {
+	OBJ attribute = ap[n];
+
+	if (attribute == @symbol(O_RDONLY)) {
+	    openFlags |= O_RDONLY;
+	} else if (attribute == @symbol(O_RDWR)) {
+	    openFlags |= O_RDWR;
+	} else if (attribute == @symbol(O_WRONLY)) {
+	    openFlags |= O_WRONLY;
+	} else if (attribute == @symbol(O_CREAT)) {
+	    openFlags |= O_CREAT;
+	} else if (attribute == @symbol(O_APPEND)) {
+	    openFlags |= O_APPEND;
+	} else if (attribute == @symbol(O_EXCL)) {
+	    openFlags |= O_EXCL;
+	} else if (attribute == @symbol(O_TRUNC)) {
+	    openFlags |= O_TRUNC;
+	} else if (attribute == @symbol(O_LARGEFILE)) {
 #ifdef O_LARGEFILE
-            openFlags |= O_LARGEFILE;
+	    openFlags |= O_LARGEFILE;
 #else
-            error = @symbol(badArgument2);
-            goto err;
-#endif
-        } else if (attribute == @symbol(O_SYNC)) {
+	    error = @symbol(badArgument2);
+	    goto err;
+#endif
+	} else if (attribute == @symbol(O_SYNC)) {
 #ifdef O_SYNC
-            openFlags |= O_SYNC;
+	    openFlags |= O_SYNC;
 #else
-            error = @symbol(badArgument2);
-            goto err;
-#endif
-        }
+	    error = @symbol(badArgument2);
+	    goto err;
+#endif
+	}
     }
 
 #if defined(O_NONBLOCK)
@@ -3974,29 +3974,29 @@
 again:
     fd = open((char *) __stringVal(encodedPathName), openFlags, mode);
     if (fd < 0) {
-        if (errno == EINTR) {
-            __HANDLE_INTERRUPTS__;
-            goto again;
-        } else {
-            error = __mkSmallInteger(errno);
-            goto err;
-        }
+	if (errno == EINTR) {
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
+	} else {
+	    error = __mkSmallInteger(errno);
+	    goto err;
+	}
     }
     fileDescriptor = __mkSmallInteger(fd);
 err:;
 %}.
     ^ fileDescriptor notNil ifTrue:[
-        FileDescriptorHandle for:fileDescriptor.
+	FileDescriptorHandle for:fileDescriptor.
     ] ifFalse:[
-        (self errorHolderForNumber:error) reportError
-    ].
-
-    "
-        self open:'/etc/hosts' attributes:#(O_RDONLY) mode:nil
-        self open:'/tmp/xxzz' attributes:#(O_RDWR O_CREAT) mode:8r611
-        self open:'/etc/passwd' attributes:#(O_RDWR) mode:nil
-        self open:'/no one knows this file' attributes:#(O_RDONLY) mode:nil
-        self open:'foo/bar/baz' attributes:#(O_RDWR O_CREAT) mode:nil
+	(self errorHolderForNumber:error) reportError
+    ].
+
+    "
+	self open:'/etc/hosts' attributes:#(O_RDONLY) mode:nil
+	self open:'/tmp/xxzz' attributes:#(O_RDWR O_CREAT) mode:8r611
+	self open:'/etc/passwd' attributes:#(O_RDWR) mode:nil
+	self open:'/no one knows this file' attributes:#(O_RDONLY) mode:nil
+	self open:'foo/bar/baz' attributes:#(O_RDWR O_CREAT) mode:nil
     "
 !
 
@@ -4036,8 +4036,8 @@
     ^ self executeCommand:(Array with:'/bin/cp' with:'-af' with:sourcePathName with:destination)
 
     "
-        self recursiveCopyDirectory:'packages' to:'foo'.
-        self recursiveRemoveDirectory:'foo'.
+	self recursiveCopyDirectory:'packages' to:'foo'.
+	self recursiveRemoveDirectory:'foo'.
     "
 
     "Modified: / 5.6.1998 / 18:33:57 / cg"
@@ -4070,22 +4070,22 @@
     int ret;
 
     if (__isStringLike(encodedPathName)) {
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = rmdir((char *) __stringVal(encodedPathName));
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-
-        if (ret >= 0) {
-            RETURN (nil);
-        }
-        error = __mkSmallInteger(errno);
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = rmdir((char *) __stringVal(encodedPathName));
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+
+	if (ret >= 0) {
+	    RETURN (nil);
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     "/
@@ -4110,22 +4110,22 @@
     int ret;
 
     if (__isStringLike(encodedPathName)) {
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = unlink((char *) __stringVal(encodedPathName));
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-
-        if (ret >= 0) {
-            RETURN (nil);
-        }
-        error = __mkSmallInteger(errno);
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = unlink((char *) __stringVal(encodedPathName));
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+
+	if (ret >= 0) {
+	    RETURN (nil);
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
 
@@ -4149,32 +4149,32 @@
 
     if (__isStringLike(encodedOldPathName) && __isStringLike(encodedNewPathName)) {
 #if defined(HAS_RENAME)
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = rename((char *) __stringVal(encodedOldPathName), (char *) __stringVal(encodedNewPathName));
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = rename((char *) __stringVal(encodedOldPathName), (char *) __stringVal(encodedNewPathName));
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
 #else
-        ret = link((char *) __stringVal(encodedOldPathName), (char *) __stringVal(encodedNewPathName));
-        if (ret >= 0) {
-            ret = unlink((char *) __stringVal(encodedOldPathName));
-            if (ret < 0) {
-                eno = errno;
-                unlink((char *) __stringVal(encodedNewPathName));
-                errno = eno;
-            }
-        }
-#endif
-        if (ret >= 0) {
-            RETURN (nil);
-        }
-        error = __mkSmallInteger(errno);
+	ret = link((char *) __stringVal(encodedOldPathName), (char *) __stringVal(encodedNewPathName));
+	if (ret >= 0) {
+	    ret = unlink((char *) __stringVal(encodedOldPathName));
+	    if (ret < 0) {
+		eno = errno;
+		unlink((char *) __stringVal(encodedNewPathName));
+		errno = eno;
+	    }
+	}
+#endif
+	if (ret >= 0) {
+	    RETURN (nil);
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     ^ self primitiveFailed
@@ -4205,9 +4205,9 @@
 # if defined(LINUX)
 #  if __GLIBC_PREREQ(2, 14)
     if (__isSmallInteger(handle)) {
-        if (syncfs(__intVal(handle)) == 0) {
-            RETURN(self);
-        }
+	if (syncfs(__intVal(handle)) == 0) {
+	    RETURN(self);
+	}
     }
 #  endif
 # endif
@@ -4238,69 +4238,69 @@
     off_t truncateSize;
 
     if (!__isStringLike(encodedPathName))
-        goto getOutOfHere;
+	goto getOutOfHere;
 
     if (__isSmallInteger(newSize)) {
-        truncateSize = __intVal(newSize);
-        if (truncateSize < 0) {
-            goto getOutOfHere;
-        }
+	truncateSize = __intVal(newSize);
+	if (truncateSize < 0) {
+	    goto getOutOfHere;
+	}
     } else {
-        truncateSize = __signedLongIntVal(newSize);
-        if (truncateSize < 0) {
-            goto getOutOfHere;
-        }
-        if (truncateSize == 0) {
-            if (sizeof(truncateSize) == 8) {
-                if (__signedLong64IntVal(newSize, &truncateSize) == 0 || truncateSize < 0) {
-                    goto getOutOfHere;
-                }
-            } else {
-                goto getOutOfHere;
-            }
-        }
+	truncateSize = __signedLongIntVal(newSize);
+	if (truncateSize < 0) {
+	    goto getOutOfHere;
+	}
+	if (truncateSize == 0) {
+	    if (sizeof(truncateSize) == 8) {
+		if (__signedLong64IntVal(newSize, &truncateSize) == 0 || truncateSize < 0) {
+		    goto getOutOfHere;
+		}
+	    } else {
+		goto getOutOfHere;
+	    }
+	}
     }
 
 #if defined(HAS_TRUNCATE)
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = truncate((char *) __stringVal(encodedPathName), truncateSize);
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = truncate((char *) __stringVal(encodedPathName), truncateSize);
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
 
 #elif defined(HAS_FTRUNCATE)
     {
-        int fd;
-
-        do {
-            fd = ret = open((char *) __stringVal(encodedPathName), 2);
-        } while (fd < 0 && errno == EINTR);
-        if (fd >= 0) {
-            ret = ftruncate(fd, truncateSize);
-            close(fd);
-        }
+	int fd;
+
+	do {
+	    fd = ret = open((char *) __stringVal(encodedPathName), 2);
+	} while (fd < 0 && errno == EINTR);
+	if (fd >= 0) {
+	    ret = ftruncate(fd, truncateSize);
+	    close(fd);
+	}
     }
 #endif /* HAS_FTRUNCATE */
-        if (ret >= 0) {
-            RETURN (nil);
-        }
-        error = __mkSmallInteger(errno);
+	if (ret >= 0) {
+	    RETURN (nil);
+	}
+	error = __mkSmallInteger(errno);
 
 getOutOfHere:;
 #else
-        error = __mkSmallInteger(ENOTSUP);
+	error = __mkSmallInteger(ENOTSUP);
 #endif
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     ^ self primitiveFailed
 
     "
-        self truncateFile:'foo' to:2222222
+	self truncateFile:'foo' to:2222222
     "
 ! !
 
@@ -4331,40 +4331,40 @@
 #   endif
 
     if (aSymbol == @symbol(readUser)) {
-        RETURN ( __mkSmallInteger(S_IRUSR) );
+	RETURN ( __mkSmallInteger(S_IRUSR) );
     }
     if (aSymbol == @symbol(writeUser)) {
-        RETURN ( __mkSmallInteger(S_IWUSR) );
+	RETURN ( __mkSmallInteger(S_IWUSR) );
     }
     if (aSymbol == @symbol(executeUser)) {
-        RETURN ( __mkSmallInteger(S_IXUSR) );
+	RETURN ( __mkSmallInteger(S_IXUSR) );
     }
     if (aSymbol == @symbol(readGroup)) {
-        RETURN ( __mkSmallInteger(S_IRGRP) );
+	RETURN ( __mkSmallInteger(S_IRGRP) );
     }
     if (aSymbol == @symbol(writeGroup)) {
-        RETURN ( __mkSmallInteger(S_IWGRP) );
+	RETURN ( __mkSmallInteger(S_IWGRP) );
     }
     if (aSymbol == @symbol(executeGroup)) {
-        RETURN ( __mkSmallInteger(S_IXGRP) );
+	RETURN ( __mkSmallInteger(S_IXGRP) );
     }
     if (aSymbol == @symbol(readOthers)) {
-        RETURN ( __mkSmallInteger(S_IROTH) );
+	RETURN ( __mkSmallInteger(S_IROTH) );
     }
     if (aSymbol == @symbol(writeOthers)) {
-        RETURN ( __mkSmallInteger(S_IWOTH) );
+	RETURN ( __mkSmallInteger(S_IWOTH) );
     }
     if (aSymbol == @symbol(executeOthers)) {
-        RETURN ( __mkSmallInteger(S_IXOTH) );
+	RETURN ( __mkSmallInteger(S_IXOTH) );
     }
     if (aSymbol == @symbol(setUid)) {
-        RETURN ( __mkSmallInteger(S_ISUID) );
+	RETURN ( __mkSmallInteger(S_ISUID) );
     }
     if (aSymbol == @symbol(setGid)) {
-        RETURN ( __mkSmallInteger(S_ISGID) );
+	RETURN ( __mkSmallInteger(S_ISGID) );
     }
     if (aSymbol == @symbol(removeOnlyByOwner)) {
-        RETURN ( __mkSmallInteger(S_ISVTX) );
+	RETURN ( __mkSmallInteger(S_ISVTX) );
     }
 %}.
     ^ self primitiveFailed
@@ -4383,7 +4383,7 @@
 
     "
      this could have been implemented as:
-        (self infoOf:aPathName) at:#mode
+	(self infoOf:aPathName) at:#mode
      but for huge directory searches the code below is faster
     "
 
@@ -4396,24 +4396,24 @@
 
     if (__isStringLike(encodedPathName)) {
 #ifdef TRACE_STAT_CALLS
-        printf("stat on '%s' for accessMode\n", __stringVal(encodedPathName));
-#endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = stat((char *) __stringVal(encodedPathName), &buf);
-        } while ((ret < 0) && (errno == EINTR));
-        __END_INTERRUPTABLE__
-
-        if (ret >= 0) {
-            RETURN ( __mkSmallInteger(buf.st_mode & 0777) );
-        }
-        error = __mkSmallInteger(errno);
+	printf("stat on '%s' for accessMode\n", __stringVal(encodedPathName));
+#endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = stat((char *) __stringVal(encodedPathName), &buf);
+	} while ((ret < 0) && (errno == EINTR));
+	__END_INTERRUPTABLE__
+
+	if (ret >= 0) {
+	    RETURN ( __mkSmallInteger(buf.st_mode & 0777) );
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
    ^ self primitiveFailed
@@ -4437,31 +4437,31 @@
 
     if (__isSmallInteger(aFileDescriptor)) {
 # ifdef TRACE_STAT_CALLS
-        printf("fstat on '%d' for accessMode\n", __smallIntegerVal(aFileDescriptor));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = fstat(__smallIntegerVal(aFileDescriptor), &buf);
-        } while ((ret < 0) && (errno == EINTR));
-        __END_INTERRUPTABLE__
-
-        if (ret >= 0) {
-            RETURN ( __mkSmallInteger(buf.st_mode & 0777) );
-        }
-        error = __mkSmallInteger(errno);
+	printf("fstat on '%d' for accessMode\n", __smallIntegerVal(aFileDescriptor));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = fstat(__smallIntegerVal(aFileDescriptor), &buf);
+	} while ((ret < 0) && (errno == EINTR));
+	__END_INTERRUPTABLE__
+
+	if (ret >= 0) {
+	    RETURN ( __mkSmallInteger(buf.st_mode & 0777) );
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     ^ self primitiveFailed
 
    "
     '/' asFilename readingFileDo:[:s|
-        (OperatingSystem accessModeOfFd:s fileDescriptor) printStringRadix:8
+	(OperatingSystem accessModeOfFd:s fileDescriptor) printStringRadix:8
     ].
    "
 !
@@ -4479,28 +4479,28 @@
     int ret;
 
     if (__isStringLike(encodedPathName) && __isSmallInteger(modeBits)) {
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = chmod((char *)__stringVal(encodedPathName), __intVal(modeBits));
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-
-        if (ret >= 0) {
-            RETURN (nil);
-        }
-        error = __mkSmallInteger(errno);
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = chmod((char *)__stringVal(encodedPathName), __intVal(modeBits));
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+
+	if (ret >= 0) {
+	    RETURN (nil);
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     ^ self primitiveFailed
 
     "
-        self changeAccessModeOf:'foo' to:8r666
+	self changeAccessModeOf:'foo' to:8r666
     "
 !
 
@@ -4517,22 +4517,22 @@
     int ret;
 
     if (__isSmallInteger(aFileDescriptor) && __isSmallInteger(modeBits)) {
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = fchmod(__smallIntegerVal(aFileDescriptor), __intVal(modeBits));
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-
-        if (ret >= 0) {
-            RETURN (nil);
-        }
-        error = __mkSmallInteger(errno);
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = fchmod(__smallIntegerVal(aFileDescriptor), __intVal(modeBits));
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+
+	if (ret >= 0) {
+	    RETURN (nil);
+	}
+	error = __mkSmallInteger(errno);
     }
 %}.
 
     error notNil ifTrue:[
-        LastErrorNumber := error.
-        ^ self errorHolderForNumber:error.
+	LastErrorNumber := error.
+	^ self errorHolderForNumber:error.
     ].
 
     ^ self primitiveFailed
@@ -4561,69 +4561,69 @@
 
 %{
     if (__isSmallInteger(aFileDescriptor)) {
-        int fd = __intVal(aFileDescriptor);
-        int lockArg;
-
-        /*
-         * claus: sigh - each one has a different interface ...
-         */
+	int fd = __intVal(aFileDescriptor);
+	int lockArg;
+
+	/*
+	 * claus: sigh - each one has a different interface ...
+	 */
 #if defined(F_SETLK)
-        {
-            /*
-             * new fcntl(SETLK) interface;
-             * available on SYSV4 and Linux
-             */
-            struct flock flock;
-
-            if (isSharedReadLock == true) {
-                flock.l_type = F_RDLCK;
-            } else {
-                flock.l_type = F_WRLCK;
-            }
-            flock.l_whence = 0;
-            flock.l_start = 0;
-            flock.l_len = 0;
-            lockArg = F_SETLK;
+	{
+	    /*
+	     * new fcntl(SETLK) interface;
+	     * available on SYSV4 and Linux
+	     */
+	    struct flock flock;
+
+	    if (isSharedReadLock == true) {
+		flock.l_type = F_RDLCK;
+	    } else {
+		flock.l_type = F_WRLCK;
+	    }
+	    flock.l_whence = 0;
+	    flock.l_start = 0;
+	    flock.l_len = 0;
+	    lockArg = F_SETLK;
 # if defined(F_SETLKW)
-            if (blockIfLocked == true) {
-                lockArg = F_SETLKW;
-            }
-# endif
-            if (fcntl(fd, lockArg, &flock) != -1) {
-                RETURN (true);
-            }
-        }
+	    if (blockIfLocked == true) {
+		lockArg = F_SETLKW;
+	    }
+# endif
+	    if (fcntl(fd, lockArg, &flock) != -1) {
+		RETURN (true);
+	    }
+	}
 
 #else /* no F_SETLK available */
 
 # if defined(LOCK_EX) && defined(LOCK_UN)
-        /*
-         * BSD 4.3 advisory locks
-         */
-        lockArg = LOCK_EX;
+	/*
+	 * BSD 4.3 advisory locks
+	 */
+	lockArg = LOCK_EX;
 #  if defined(LOCK_SH)
-        if (isSharedReadLock == true) {
-            lockArg = LOCK_SH
-        }
+	if (isSharedReadLock == true) {
+	    lockArg = LOCK_SH
+	}
 #  endif
 #  if defined(LOCK_NB)
-        if (blockIfLocked == false) {
-            lockArg |= LOCK_NB;
-        }
-#  endif
-        if (flock(fd, lockArg) != -1) {
-            RETURN (true);
-        }
+	if (blockIfLocked == false) {
+	    lockArg |= LOCK_NB;
+	}
+#  endif
+	if (flock(fd, lockArg) != -1) {
+	    RETURN (true);
+	}
 
 # else /* no flock available */
 
 #  if defined(F_LOCK) && defined(F_UNLOCK)
-        /*
-         * SYSV3 advisory locks
-         */
-        if (lockf(fd, F_LOCK, 0) != -1) {
-            RETURN (true);
-        }
+	/*
+	 * SYSV3 advisory locks
+	 */
+	if (lockf(fd, F_LOCK, 0) != -1) {
+	    RETURN (true);
+	}
 #  endif
 # endif
 #endif
@@ -4694,47 +4694,47 @@
 
 %{
     if (__isSmallInteger(aFileDescriptor)) {
-        int fd = __intVal(aFileDescriptor);
-
-        /*
-         * claus: sigh - each one has a different interface ...
-         */
+	int fd = __intVal(aFileDescriptor);
+
+	/*
+	 * claus: sigh - each one has a different interface ...
+	 */
 #if defined(F_SETLK)
-        {
-            /*
-             * new fcntl(SETLK) interface;
-             * available on SYSV4 and Linux
-             */
-            struct flock flock;
-
-            flock.l_type = F_UNLCK;
-            flock.l_whence = 0;
-            flock.l_start = 0;
-            flock.l_len = 0;
-            if (fcntl(fd, F_SETLK, &flock) != -1) {
-                RETURN (true);
-            }
-        }
+	{
+	    /*
+	     * new fcntl(SETLK) interface;
+	     * available on SYSV4 and Linux
+	     */
+	    struct flock flock;
+
+	    flock.l_type = F_UNLCK;
+	    flock.l_whence = 0;
+	    flock.l_start = 0;
+	    flock.l_len = 0;
+	    if (fcntl(fd, F_SETLK, &flock) != -1) {
+		RETURN (true);
+	    }
+	}
 
 #else /* no F_SETLK available */
 
 # if defined(LOCK_EX) && defined(LOCK_UN)
-        /*
-         * BSD 4.3 advisory locks
-         */
-        if (flock(fd, LOCK_UN) != -1) {
-            RETURN (true);
-        }
+	/*
+	 * BSD 4.3 advisory locks
+	 */
+	if (flock(fd, LOCK_UN) != -1) {
+	    RETURN (true);
+	}
 
 # else /* no flock available */
 
 #  if defined(F_LOCK) && defined(F_UNLOCK)
-        /*
-         * SYSV3 advisory locks
-         */
-        if (lockf(fd, F_UNLOCK, 0) != -1) {
-            RETURN (true);
-        }
+	/*
+	 * SYSV3 advisory locks
+	 */
+	if (lockf(fd, F_UNLOCK, 0) != -1) {
+	    RETURN (true);
+	}
 #  endif
 # endif
 #endif
@@ -4768,27 +4768,27 @@
     |names n "{ Class: SmallInteger }" |
 
     names := pathName
-                asCollectionOfSubstringsSeparatedBy:self fileSeparator.
+		asCollectionOfSubstringsSeparatedBy:self fileSeparator.
     names := names asOrderedCollection.
     "
      cut off initial double-slashes
     "
     [names startsWith:#('' '')] whileTrue:[
-        names removeFirst.
+	names removeFirst.
     ].
     "
      cut off double-slashes at end
     "
     [names endsWith:#('')] whileTrue:[
-        names removeLast.
+	names removeLast.
     ].
     "
      cut off current-dir at beginning
     "
     n := names size.
     [(n >= 2) and:[names startsWith:#('.')]] whileTrue:[
-        names removeFirst.
-        n := n - 1.
+	names removeFirst.
+	n := n - 1.
     ].
 
     "
@@ -4797,14 +4797,14 @@
     [(n > 2)
      and:[(names endsWith:#('..'))
      and:[((names at:(n - 1)) startsWith:'.') not ]]] whileTrue:[
-        names removeLast; removeLast.
-        n := n - 2.
+	names removeLast; removeLast.
+	n := n - 2.
     ].
 
     ^ names asStringWith:self fileSeparator
-                    from:1
-                    to:n
-                    compressTabs:false final:nil
+		    from:1
+		    to:n
+		    compressTabs:false final:nil
 
     "
      OperatingSystem compressPath:'./..'
@@ -4836,7 +4836,7 @@
 
     ret := self primGetCurrentDirectory.
     ret isNil ifTrue:[
-        self primitiveFailed
+	self primitiveFailed
     ].
     path := self decodePath:ret.    "/ possibly decode from UTF8 (depending on the OS)
     CurrentDirectory := path.
@@ -4844,7 +4844,7 @@
     ^ path.
 
     "
-        self getCurrentDirectory
+	self getCurrentDirectory
     "
 !
 
@@ -4853,8 +4853,8 @@
      The amountof information returned depends upon the OS, and is
      not guaranteed to be consistent across architectures.
      On unix, the information returned is (at least):
-        freeBytes
-        totalBytes
+	freeBytes
+	totalBytes
     "
 
     |outputText keys values n info
@@ -4885,22 +4885,22 @@
 
     n := Integer readFrom:(values at:capacityIdx) onError:nil.
     n notNil ifTrue:[
-        info at:#percentUsed put:n
+	info at:#percentUsed put:n
     ].
 
     n := Integer readFrom:(values at:availIdx) onError:nil.
     n notNil ifTrue:[
-        info at:#freeBytes put:(n * 1024)
+	info at:#freeBytes put:(n * 1024)
     ].
 
     n := Integer readFrom:(values at:usedIdx) onError:nil.
     n notNil ifTrue:[
-        info at:#usedBytes put:(n * 1024)
+	info at:#usedBytes put:(n * 1024)
     ].
 
     n := Integer readFrom:(values at:sizeIdx) onError:nil.
     n notNil ifTrue:[
-        info at:#totalBytes put:(n * 1024)
+	info at:#totalBytes put:(n * 1024)
     ].
 
     info at:#mountPoint put:(values at:mountIdx).
@@ -4922,8 +4922,8 @@
      The amount of information returned depends upon the OS, and is
      not guaranteed to be consistent across architectures.
      On unix, the information returned is (at least):
-        mountPoint - mount point
-        fileSystem - device or NFS-remotePath
+	mountPoint - mount point
+	fileSystem - device or NFS-remotePath
     "
 
     |outputText keys values info infoEntry|
@@ -4941,15 +4941,15 @@
     info := OrderedCollection new.
 
     outputText from:2 do:[:line |
-        values := line asCollectionOfWords.
-
-        values size >= 2 ifTrue:[
-
-            infoEntry := IdentityDictionary new.
-            infoEntry at:#mountPoint put:(values last).
-            infoEntry at:#fileSystem put:(values first).
-            info add:infoEntry.
-        ]
+	values := line asCollectionOfWords.
+
+	values size >= 2 ifTrue:[
+
+	    infoEntry := IdentityDictionary new.
+	    infoEntry at:#mountPoint put:(values last).
+	    infoEntry at:#fileSystem put:(values first).
+	    info add:infoEntry.
+	]
     ].
     ^ info
 
@@ -4974,9 +4974,9 @@
 
      The info object returned is OS-specific, however it responds to at
      least
-        #isFor32BitArchitecture
-        #isFor64BitArchitecture ... returns true, if the given object is for
-                                     32bit, 64bit architecture respectively
+	#isFor32BitArchitecture
+	#isFor64BitArchitecture ... returns true, if the given object is for
+				     32bit, 64bit architecture respectively
     "
     ^ ELFFileHeader fromFile: aStringOrFilename
 
@@ -4987,21 +4987,21 @@
     "return some object filled with info for the file 'aPathName';
      the info (for which corresponding access methods are understood by
      the returned object) is:
-         type            - a symbol giving the files type
-         mode            - numeric access mode
-         uid             - owners user id
-         gid             - owners group id
-         size            - files size
-         id              - files number (i.e. inode number)
-         accessed        - last access time (as Timestamp)
-         modified        - last modification time (as Timestamp)
-         statusChanged   - last status change time (as Timestamp)
-         alternativeName     - (windows only:) the MSDOS name of the file
-         recordFormatNumeric - (VMS only:) numeric value of the recordFormat
-         recordFormat        - (VMS only:) symbolic value of the recordFormat
-         recordAttributes    - (VMS only:) recordAttributes
-         fixedHeaderSize     - (VMS only:) fixed header size in a variable record format
-         recordSize          - (VMS only:) record size.
+	 type            - a symbol giving the files type
+	 mode            - numeric access mode
+	 uid             - owners user id
+	 gid             - owners group id
+	 size            - files size
+	 id              - files number (i.e. inode number)
+	 accessed        - last access time (as Timestamp)
+	 modified        - last modification time (as Timestamp)
+	 statusChanged   - last status change time (as Timestamp)
+	 alternativeName     - (windows only:) the MSDOS name of the file
+	 recordFormatNumeric - (VMS only:) numeric value of the recordFormat
+	 recordFormat        - (VMS only:) symbolic value of the recordFormat
+	 recordAttributes    - (VMS only:) recordAttributes
+	 fixedHeaderSize     - (VMS only:) fixed header size in a variable record format
+	 recordSize          - (VMS only:) record size.
 
      Some of the fields may be returned as nil on systems which do not provide
      all of the information.
@@ -5019,8 +5019,8 @@
     int ret;
 
     if (!__isStringLike(encodedPathName)) {
-        error = @symbol(badArgument);
-        goto out;
+	error = @symbol(badArgument);
+	goto out;
     }
 
 # ifdef TRACE_STAT_CALLS
@@ -5028,76 +5028,76 @@
 # endif
     __BEGIN_INTERRUPTABLE__
     do {
-        ret = stat((char *) __stringVal(encodedPathName), &buf);
+	ret = stat((char *) __stringVal(encodedPathName), &buf);
     } while ((ret < 0) && (errno == EINTR));
     __END_INTERRUPTABLE__
 
     if (ret < 0) {
-        error = __mkSmallInteger(errno);
-        @global(LastErrorNumber) = error;
-        goto out;
+	error = __mkSmallInteger(errno);
+	@global(LastErrorNumber) = error;
+	goto out;
     }
     switch (buf.st_mode & S_IFMT) {
-        case S_IFDIR:
-            type = @symbol(directory);
-            break;
-
-        case S_IFREG:
-            type = @symbol(regular);
-            break;
+	case S_IFDIR:
+	    type = @symbol(directory);
+	    break;
+
+	case S_IFREG:
+	    type = @symbol(regular);
+	    break;
 # ifdef S_IFCHR
-        case S_IFCHR:
-            type = @symbol(characterSpecial);
-            break;
+	case S_IFCHR:
+	    type = @symbol(characterSpecial);
+	    break;
 # endif
 # ifdef S_IFBLK
-        case S_IFBLK:
-            type = @symbol(blockSpecial);
-            break;
+	case S_IFBLK:
+	    type = @symbol(blockSpecial);
+	    break;
 # endif
 # ifdef S_IFMPC
-        case S_IFMPC:
-            type = @symbol(multiplexedCharacterSpecial);
-            break;
+	case S_IFMPC:
+	    type = @symbol(multiplexedCharacterSpecial);
+	    break;
 # endif
 # ifdef S_IFMPB
-        case S_IFMPB:
-            type = @symbol(multiplexedBlockSpecial);
-            break;
+	case S_IFMPB:
+	    type = @symbol(multiplexedBlockSpecial);
+	    break;
 # endif
 # ifdef S_IFLNK
-        case S_IFLNK:
-            type = @symbol(symbolicLink);
-            break;
+	case S_IFLNK:
+	    type = @symbol(symbolicLink);
+	    break;
 # endif
 # ifdef S_IFSOCK
-        case S_IFSOCK:
-            type = @symbol(socket);
-            break;
+	case S_IFSOCK:
+	    type = @symbol(socket);
+	    break;
 # endif
 # ifdef S_IFIFO
-        case S_IFIFO:
-            type = @symbol(fifo);
-            break;
-# endif
-        default:
-            type = @symbol(unknown);
-            break;
+	case S_IFIFO:
+	    type = @symbol(fifo);
+	    break;
+# endif
+	default:
+	    type = @symbol(unknown);
+	    break;
     }
 
     if (sizeof(buf.st_ino) == 8) {
-        id = __MKUINT64(&buf.st_ino);
+	id = __MKUINT64(&buf.st_ino);
     } else {
-        id = __MKUINT(buf.st_ino);
+	id = __MKUINT(buf.st_ino);
     }
     mode = __mkSmallInteger(buf.st_mode & 0777);
     uid = __mkSmallInteger(buf.st_uid);
     gid = __mkSmallInteger(buf.st_gid);
     nLink = __mkSmallInteger(buf.st_nlink);
     if (sizeof(buf.st_size) == 8) {
-        size = __MKINT64(&buf.st_size);
+	size = __MKINT64(&buf.st_size);
     } else {
-        size = __MKINT(buf.st_size);
+	size = __MKINT(buf.st_size);
     }
     aOStime = __MKUINT(buf.st_atime);
     mOStime = __MKUINT(buf.st_mtime);
@@ -5106,26 +5106,26 @@
     out:;
 %}.
      mode notNil ifTrue:[
-        "/ now done lazy in FileStatusInfo
-        "/ atime := Timestamp fromOSTime:(aOStime * 1000).
-        "/ mtime := Timestamp fromOSTime:(mOStime * 1000).
-        "/ ctime := Timestamp fromOSTime:(cOStime * 1000).
-
-        ^ FileStatusInfo
-                    type:type
-                    mode:mode
-                    uid:uid
-                    gid:gid
-                    size:size
-                    id:id
-                    accessed:aOStime
-                    modified:mOStime
-                    statusChanged:cOStime
-                    sourcePath:nil targetPath:nil
-                    numLinks:nLink.
+	"/ now done lazy in FileStatusInfo
+	"/ atime := Timestamp fromOSTime:(aOStime * 1000).
+	"/ mtime := Timestamp fromOSTime:(mOStime * 1000).
+	"/ ctime := Timestamp fromOSTime:(cOStime * 1000).
+
+	^ FileStatusInfo
+		    type:type
+		    mode:mode
+		    uid:uid
+		    gid:gid
+		    size:size
+		    id:id
+		    accessed:aOStime
+		    modified:mOStime
+		    statusChanged:cOStime
+		    sourcePath:nil targetPath:nil
+		    numLinks:nLink.
     ].
     error notNil ifTrue:[
-        ^ nil.
+	^ nil.
     ].
 
     ^ self primitiveFailed
@@ -5150,40 +5150,40 @@
 %{
 #ifdef __SCHTEAM__
     if (encodedPathName.isStringLike()) {
-        java.io.File file = new java.io.File( encodedPathName.asString() );
-        int _mode;
-
-        if (file.exists() && file.isDirectory()) {
-            return __c__._RETURN_true();
-        }
-        return __c__._RETURN_false();
+	java.io.File file = new java.io.File( encodedPathName.asString() );
+	int _mode;
+
+	if (file.exists() && file.isDirectory()) {
+	    return __c__._RETURN_true();
+	}
+	return __c__._RETURN_false();
     }
 #else
     int ret;
 
     if (__isStringLike(encodedPathName)) {
-        struct stat buf;
+	struct stat buf;
 
 # ifdef TRACE_STAT_CALLS
-        printf("stat on '%s' for isDirectory\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = stat((char *) __stringVal(encodedPathName), &buf);
-        } while ((ret < 0) && (errno == EINTR));
-        __END_INTERRUPTABLE__
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-            RETURN ( false );
-        }
-        RETURN ( ((buf.st_mode & S_IFMT) == S_IFDIR) ? true : false);
+	printf("stat on '%s' for isDirectory\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = stat((char *) __stringVal(encodedPathName), &buf);
+	} while ((ret < 0) && (errno == EINTR));
+	__END_INTERRUPTABLE__
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	    RETURN ( false );
+	}
+	RETURN ( ((buf.st_mode & S_IFMT) == S_IFDIR) ? true : false);
     }
 #endif /* not SCHTEAM */
 %}.
     ^ self primitiveFailed
 
     "an alternative implementation would be:
-        ^ (self infoOf:aPathName) type == #directory
+	^ (self infoOf:aPathName) type == #directory
     "
 !
 
@@ -5198,30 +5198,30 @@
 %{
 #ifdef __SCHTEAM__
     if (encodedPathName.isStringLike()) {
-        java.io.File file = new java.io.File( encodedPathName.asString() );
-        int _mode;
-
-        if (file.exists() && file.canExecute()) {
-            return __c__._RETURN_true();
-        }
-        return __c__._RETURN_false();
+	java.io.File file = new java.io.File( encodedPathName.asString() );
+	int _mode;
+
+	if (file.exists() && file.canExecute()) {
+	    return __c__._RETURN_true();
+	}
+	return __c__._RETURN_false();
     }
 #else
     int ret;
 
     if (__isStringLike(encodedPathName)) {
 # ifdef TRACE_ACCESS_CALLS
-        printf("access on '%s' for executable\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = access(__stringVal(encodedPathName), X_OK);
-        } while ((ret < 0) && (errno == EINTR));
-        __END_INTERRUPTABLE__
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-        }
-        RETURN ( ((ret == 0) ? true : false) );
+	printf("access on '%s' for executable\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = access(__stringVal(encodedPathName), X_OK);
+	} while ((ret < 0) && (errno == EINTR));
+	__END_INTERRUPTABLE__
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	}
+	RETURN ( ((ret == 0) ? true : false) );
     }
 #endif /* not SCHTEAM */
 %}.
@@ -5238,30 +5238,30 @@
 %{
 #ifdef __SCHTEAM__
     if (encodedPathName.isStringLike()) {
-        java.io.File file = new java.io.File( encodedPathName.asString() );
-        int _mode;
-
-        if (file.exists() && file.canRead()) {
-            return __c__._RETURN_true();
-        }
-        return __c__._RETURN_false();
+	java.io.File file = new java.io.File( encodedPathName.asString() );
+	int _mode;
+
+	if (file.exists() && file.canRead()) {
+	    return __c__._RETURN_true();
+	}
+	return __c__._RETURN_false();
     }
 #else
     int ret;
 
     if (__isStringLike(encodedPathName)) {
 # ifdef TRACE_ACCESS_CALLS
-        printf("access on '%s' for readable\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = access(__stringVal(encodedPathName), R_OK);
-        } while ((ret < 0) && (errno == EINTR));
-        __END_INTERRUPTABLE__
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-        }
-        RETURN ( ((ret == 0) ? true : false) );
+	printf("access on '%s' for readable\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = access(__stringVal(encodedPathName), R_OK);
+	} while ((ret < 0) && (errno == EINTR));
+	__END_INTERRUPTABLE__
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	}
+	RETURN ( ((ret == 0) ? true : false) );
     }
 #endif /* not SCHTEAM */
 %}.
@@ -5278,32 +5278,32 @@
 %{
 #ifdef __SCHTEAM__
     if (encodedPathName.isStringLike()) {
-        java.io.File file = new java.io.File( encodedPathName.asString() );
-        int _mode;
-
-        if (file.exists()) {
-            return __c__._RETURN_true();
-        }
-        return __c__._RETURN_false();
+	java.io.File file = new java.io.File( encodedPathName.asString() );
+	int _mode;
+
+	if (file.exists()) {
+	    return __c__._RETURN_true();
+	}
+	return __c__._RETURN_false();
     }
 #else
     if (__isStringLike(encodedPathName)) {
-        struct stat buf;
-        int ret;
+	struct stat buf;
+	int ret;
 
 # ifdef TRACE_STAT_CALLS
-        printf("stat on '%s' for isValidPath\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = stat((char *) __stringVal(encodedPathName), &buf);
-        } while ((ret < 0) && (errno == EINTR));
-        __END_INTERRUPTABLE__
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-            RETURN (false);
-        }
-        RETURN ( ret ? false : true );
+	printf("stat on '%s' for isValidPath\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = stat((char *) __stringVal(encodedPathName), &buf);
+	} while ((ret < 0) && (errno == EINTR));
+	__END_INTERRUPTABLE__
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	    RETURN (false);
+	}
+	RETURN ( ret ? false : true );
     }
 #endif /* not SCHTEAM */
 %}.
@@ -5323,30 +5323,30 @@
 %{
 #ifdef __SCHTEAM__
     if (encodedPathName.isStringLike()) {
-        java.io.File file = new java.io.File( encodedPathName.asString() );
-        int _mode;
-
-        if (file.exists() && file.canWrite()) {
-            return __c__._RETURN_true();
-        }
-        return __c__._RETURN_false();
+	java.io.File file = new java.io.File( encodedPathName.asString() );
+	int _mode;
+
+	if (file.exists() && file.canWrite()) {
+	    return __c__._RETURN_true();
+	}
+	return __c__._RETURN_false();
     }
 #else
     int ret;
 
     if (__isStringLike(encodedPathName)) {
 # ifdef TRACE_ACCESS_CALLS
-        printf("access on '%s' for writable\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = access(__stringVal(encodedPathName), W_OK);
-        } while ((ret < 0) && (errno == EINTR));
-        __END_INTERRUPTABLE__
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-        }
-        RETURN ( ((ret == 0) ? true : false) );
+	printf("access on '%s' for writable\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = access(__stringVal(encodedPathName), W_OK);
+	} while ((ret < 0) && (errno == EINTR));
+	__END_INTERRUPTABLE__
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	}
+	RETURN ( ((ret == 0) ? true : false) );
     }
 #endif /* not SCHTEAM */
 %}.
@@ -5358,21 +5358,21 @@
 
      The info (for which corresponding access methods are understood by
      the returned object) is:
-         type            - a symbol giving the file's type
-         mode            - numeric access mode
-         uid             - owners user id
-         gid             - owners group id
-         size            - files size
-         id              - files number (i.e. inode number)
-         accessed        - last access time (as Timestamp)
-         modified        - last modification time (as Timestamp)
-         statusChanged   - last status change time (as Timestamp)
-         alternativeName     - (windows only:) the MSDOS name of the file
-         recordFormatNumeric - (VMS only:) numeric value of the recordFormat
-         recordFormat        - (VMS only:) symbolic value of the recordFormat
-         recordAttributes    - (VMS only:) recordAttributes
-         fixedHeaderSize     - (VMS only:) fixed header size in a variable record format
-         recordSize          - (VMS only:) record size.
+	 type            - a symbol giving the file's type
+	 mode            - numeric access mode
+	 uid             - owners user id
+	 gid             - owners group id
+	 size            - files size
+	 id              - files number (i.e. inode number)
+	 accessed        - last access time (as Timestamp)
+	 modified        - last modification time (as Timestamp)
+	 statusChanged   - last status change time (as Timestamp)
+	 alternativeName     - (windows only:) the MSDOS name of the file
+	 recordFormatNumeric - (VMS only:) numeric value of the recordFormat
+	 recordFormat        - (VMS only:) symbolic value of the recordFormat
+	 recordAttributes    - (VMS only:) recordAttributes
+	 fixedHeaderSize     - (VMS only:) fixed header size in a variable record format
+	 recordSize          - (VMS only:) record size.
 
      Some of the fields may be returned as nil on systems which do not provide
      all of the information.
@@ -5392,35 +5392,35 @@
 %{  /* STACK: 1200 */
 #ifdef __SCHTEAM__
     if (encodedPathName.isStringLike()) {
-        java.io.File file = new java.io.File( encodedPathName.asString() );
-        int _mode;
-
-        if (file.isDirectory()) {
-            type = STSymbol._new("directory");
-        } else if (file.isFile()) {
-            type = STSymbol._new("regular");
-        } else {
-            type = STSymbol._new("unknown");
-        }
-        _mode = 0;
-        if (file.canRead()) {
-            _mode |= 0444;
-        }
-        if (file.canWrite()) {
-            _mode |= 0222;
-        }
-        if (file.canExecute()) {
-            _mode |= 0111;
-        }
-        mode = STInteger._new( _mode );
-        uid = STInteger._0;
-        gid = STInteger._0;
-        nLink = STInteger._0;
-        size = STInteger._new( file.length());
-        aOStime = STInteger._new( file.lastModified() );
-        mOStime = STInteger._new( file.lastModified() );
-        cOStime = STInteger._new( file.lastModified() );
-        path = new STString( file.getPath() );
+	java.io.File file = new java.io.File( encodedPathName.asString() );
+	int _mode;
+
+	if (file.isDirectory()) {
+	    type = STSymbol._new("directory");
+	} else if (file.isFile()) {
+	    type = STSymbol._new("regular");
+	} else {
+	    type = STSymbol._new("unknown");
+	}
+	_mode = 0;
+	if (file.canRead()) {
+	    _mode |= 0444;
+	}
+	if (file.canWrite()) {
+	    _mode |= 0222;
+	}
+	if (file.canExecute()) {
+	    _mode |= 0111;
+	}
+	mode = STInteger._new( _mode );
+	uid = STInteger._0;
+	gid = STInteger._0;
+	nLink = STInteger._0;
+	size = STInteger._new( file.length());
+	aOStime = STInteger._new( file.lastModified() );
+	mOStime = STInteger._new( file.lastModified() );
+	cOStime = STInteger._new( file.lastModified() );
+	path = new STString( file.getPath() );
     }
 #else
     struct stat buf;
@@ -5428,104 +5428,104 @@
     char pathBuffer[1024];
 
     if (__isStringLike(encodedPathName)) {
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = lstat((char *) __stringVal(encodedPathName), &buf);
-        } while ((ret < 0) && (errno == EINTR));
-        __END_INTERRUPTABLE__
-
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-            RETURN ( nil );
-        }
-        switch (buf.st_mode & S_IFMT) {
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = lstat((char *) __stringVal(encodedPathName), &buf);
+	} while ((ret < 0) && (errno == EINTR));
+	__END_INTERRUPTABLE__
+
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	    RETURN ( nil );
+	}
+	switch (buf.st_mode & S_IFMT) {
 # ifdef S_IFLNK
-            case S_IFLNK:
-                type = @symbol(symbolicLink);
-                if ((ret = readlink((char *) __stringVal(encodedPathName), pathBuffer, sizeof(pathBuffer))) < 0) {
-                    @global(LastErrorNumber) = __mkSmallInteger(errno);
-                    RETURN ( nil );
-                }
-                pathBuffer[ret] = '\0';  /* readlink does not 0-terminate */
-                path = __MKSTRING(pathBuffer);
-                break;
-# endif
-            case S_IFDIR:
-                type = @symbol(directory);
-                break;
-
-            case S_IFREG:
-                type = @symbol(regular);
-                break;
+	    case S_IFLNK:
+		type = @symbol(symbolicLink);
+		if ((ret = readlink((char *) __stringVal(encodedPathName), pathBuffer, sizeof(pathBuffer))) < 0) {
+		    @global(LastErrorNumber) = __mkSmallInteger(errno);
+		    RETURN ( nil );
+		}
+		pathBuffer[ret] = '\0';  /* readlink does not 0-terminate */
+		path = __MKSTRING(pathBuffer);
+		break;
+# endif
+	    case S_IFDIR:
+		type = @symbol(directory);
+		break;
+
+	    case S_IFREG:
+		type = @symbol(regular);
+		break;
 # ifdef S_IFCHR
-            case S_IFCHR:
-                type = @symbol(characterSpecial);
-                break;
+	    case S_IFCHR:
+		type = @symbol(characterSpecial);
+		break;
 # endif
 # ifdef S_IFBLK
-            case S_IFBLK:
-                type = @symbol(blockSpecial);
-                break;
+	    case S_IFBLK:
+		type = @symbol(blockSpecial);
+		break;
 # endif
 # ifdef S_IFMPC
-            case S_IFMPC:
-                type = @symbol(multiplexedCharacterSpecial);
-                break;
+	    case S_IFMPC:
+		type = @symbol(multiplexedCharacterSpecial);
+		break;
 # endif
 # ifdef S_IFMPB
-            case S_IFMPB:
-                type = @symbol(multiplexedBlockSpecial);
-                break;
+	    case S_IFMPB:
+		type = @symbol(multiplexedBlockSpecial);
+		break;
 # endif
 # ifdef S_IFSOCK
-            case S_IFSOCK:
-                type = @symbol(socket);
-                break;
+	    case S_IFSOCK:
+		type = @symbol(socket);
+		break;
 # endif
 # ifdef S_IFIFO
-            case S_IFIFO:
-                type = @symbol(fifo);
-                break;
-# endif
-            default:
-                type = @symbol(unknown);
-                break;
-        }
-
-        if (sizeof(buf.st_ino) == 8) {
-            id = __MKUINT64(&buf.st_ino);
-        } else {
-            id = __MKUINT(buf.st_ino);
-        }
-        mode = __mkSmallInteger(buf.st_mode & 0777);
-        uid = __mkSmallInteger(buf.st_uid);
-        gid = __mkSmallInteger(buf.st_gid);
-        nLink = __mkSmallInteger(buf.st_nlink);
-        if (sizeof(buf.st_size) == 8) {
-            size = __MKINT64(&buf.st_size);
-        } else {
-            size = __MKINT(buf.st_size);
-        }
-        aOStime = __MKUINT(buf.st_atime);
-        mOStime = __MKUINT(buf.st_mtime);
-        cOStime = __MKUINT(buf.st_ctime);
+	    case S_IFIFO:
+		type = @symbol(fifo);
+		break;
+# endif
+	    default:
+		type = @symbol(unknown);
+		break;
+	}
+
+	if (sizeof(buf.st_ino) == 8) {
+	    id = __MKUINT64(&buf.st_ino);
+	} else {
+	    id = __MKUINT(buf.st_ino);
+	}
+	mode = __mkSmallInteger(buf.st_mode & 0777);
+	uid = __mkSmallInteger(buf.st_uid);
+	gid = __mkSmallInteger(buf.st_gid);
+	nLink = __mkSmallInteger(buf.st_nlink);
+	if (sizeof(buf.st_size) == 8) {
+	    size = __MKINT64(&buf.st_size);
+	} else {
+	    size = __MKINT(buf.st_size);
+	}
+	aOStime = __MKUINT(buf.st_atime);
+	mOStime = __MKUINT(buf.st_mtime);
+	cOStime = __MKUINT(buf.st_ctime);
     }
 #endif /* not SCHTEAM */
 %}.
 
     mode notNil ifTrue:[
-        ^ FileStatusInfo
-            type:type
-            mode:mode
-            uid:uid
-            gid:gid
-            size:size
-            id:id
-            accessed:aOStime
-            modified:mOStime
-            statusChanged:cOStime
-            sourcePath:aPathName targetPath:(self decodePath:path)
-            numLinks:nLink.
+	^ FileStatusInfo
+	    type:type
+	    mode:mode
+	    uid:uid
+	    gid:gid
+	    size:size
+	    id:id
+	    accessed:aOStime
+	    modified:mOStime
+	    statusChanged:cOStime
+	    sourcePath:aPathName targetPath:(self decodePath:path)
+	    numLinks:nLink.
    ].
    ^ self primitiveFailed
 
@@ -5542,15 +5542,15 @@
      the info is cached for some time (5 minutes)"
 
     CacheMountPointsTimeStamp notNil ifTrue:[
-        Timestamp now < (CacheMountPointsTimeStamp addSeconds:5*60) ifTrue:[
-            ^ CachedMountPoints
-        ].
+	Timestamp now < (CacheMountPointsTimeStamp addSeconds:5*60) ifTrue:[
+	    ^ CachedMountPoints
+	].
     ].
 
     '/proc/mounts' asFilename exists ifTrue:[
-        CachedMountPoints := self mountPointsFromProcFS.
-        CacheMountPointsTimeStamp := Timestamp now.
-        ^ CachedMountPoints
+	CachedMountPoints := self mountPointsFromProcFS.
+	CacheMountPointsTimeStamp := Timestamp now.
+	^ CachedMountPoints
     ].
 
     "/ TODO: add fallback code for other OS's (i.e. reading /etc/mtab)
@@ -5591,66 +5591,66 @@
     |p path command|
 
     path = '.' ifTrue:[
-        ^ self getCurrentDirectory.
+	^ self getCurrentDirectory.
     ].
 
     "some systems have a convenient function for this ..."
     path := self primPathNameOf:(self encodePath:pathName).
     path notNil ifTrue:[
-        path := self decodePath:path.
+	path := self decodePath:path.
     ] ifFalse:[
-        (self isValidPath:pathName) ifFalse:[
-            p := pathName.
-            [(p size > 1)
-             and:[p endsWith:(self fileSeparator)]
-            ] whileTrue:[
-                p := p copyButLast.
-            ].
-            ^ p
-        ].
-
-        (SlowFork==true or:[PipeFailed==true]) ifFalse:[
-            |directoryName fileBaseName|
-
-            (self isDirectory:pathName) ifTrue:[
-                directoryName := pathName.
-                fileBaseName := nil.
-            ] ifFalse:[
-                |pathFilename|
-                pathFilename := pathName asFilename.
-                directoryName := pathFilename directoryName.
-                fileBaseName := pathFilename baseName.
-            ].
-
-            PipeStream openErrorSignal handle:[:ex |
-                PipeFailed := true.
-                'UnixOperatingSystem [warning]: cannot fork/popen' errorPrintCR.
-                ex return.
-            ] do:[
-                "have to fall back ..."
-                command := 'cd "' , directoryName , '"; pwd'.
-                p := PipeStream readingFrom:command.
-            ].
-
-            (p isNil or:[p atEnd]) ifTrue:[
-                ('UnixOperatingSystem [warning]: PipeStream for <' , command , '> failed') errorPrintCR.
-            ] ifFalse:[
-                path := p nextLine.
-                p close.
-            ].
-            fileBaseName notNil ifTrue:[
-                path := path, '/', fileBaseName.
-            ].
-        ].
-        path isNil ifTrue:[
-            "/
-            "/ return the original - there is nothing else can we do
-            "/
-            path := pathName
-        ].
-        (SlowFork==true or:[ForkFailed==true]) ifTrue:[
-            path := self compressPath:path
-        ]
+	(self isValidPath:pathName) ifFalse:[
+	    p := pathName.
+	    [(p size > 1)
+	     and:[p endsWith:(self fileSeparator)]
+	    ] whileTrue:[
+		p := p copyButLast.
+	    ].
+	    ^ p
+	].
+
+	(SlowFork==true or:[PipeFailed==true]) ifFalse:[
+	    |directoryName fileBaseName|
+
+	    (self isDirectory:pathName) ifTrue:[
+		directoryName := pathName.
+		fileBaseName := nil.
+	    ] ifFalse:[
+		|pathFilename|
+		pathFilename := pathName asFilename.
+		directoryName := pathFilename directoryName.
+		fileBaseName := pathFilename baseName.
+	    ].
+
+	    PipeStream openErrorSignal handle:[:ex |
+		PipeFailed := true.
+		'UnixOperatingSystem [warning]: cannot fork/popen' errorPrintCR.
+		ex return.
+	    ] do:[
+		"have to fall back ..."
+		command := 'cd "' , directoryName , '"; pwd'.
+		p := PipeStream readingFrom:command.
+	    ].
+
+	    (p isNil or:[p atEnd]) ifTrue:[
+		('UnixOperatingSystem [warning]: PipeStream for <' , command , '> failed') errorPrintCR.
+	    ] ifFalse:[
+		path := p nextLine.
+		p close.
+	    ].
+	    fileBaseName notNil ifTrue:[
+		path := path, '/', fileBaseName.
+	    ].
+	].
+	path isNil ifTrue:[
+	    "/
+	    "/ return the original - there is nothing else can we do
+	    "/
+	    path := pathName
+	].
+	(SlowFork==true or:[ForkFailed==true]) ifTrue:[
+	    path := self compressPath:path
+	]
     ].
     ^ path.
 
@@ -5672,15 +5672,15 @@
 primGetCurrentDirectory
     "return the raw name of the current directory (nil if failed - can this ever happen?).
      Warning:
-        Don't call this from outside: we may have to decode UTF on some systems.
-        See getCurrentDirectory"
+	Don't call this from outside: we may have to decode UTF on some systems.
+	See getCurrentDirectory"
 
 %{  /* UNLIMITEDSTACK */
     char nameBuffer[MAXPATHLEN + 1];
 
     if (getcwd(nameBuffer, MAXPATHLEN)) {
-        OBJ path = __MKSTRING(nameBuffer);
-        RETURN(path);
+	OBJ path = __MKSTRING(nameBuffer);
+	RETURN(path);
     }
     RETURN(nil);
 %}
@@ -5698,26 +5698,26 @@
     encodedPathName := self encodePath:aPathName.
 %{
     if (__isStringLike(encodedPathName)) {
-        struct stat buf;
-        unsigned INT ino;
-        OBJ retVal;
-        int ret;
+	struct stat buf;
+	unsigned INT ino;
+	OBJ retVal;
+	int ret;
 
 # ifdef TRACE_STAT_CALLS
-        printf("stat on '%s' for id\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = stat((char *) __stringVal(encodedPathName), &buf);
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-        if (ret >= 0) {
-            ino = buf.st_ino;
-            retVal = __MKUINT(ino);
-            RETURN (retVal);
-        }
-        @global(LastErrorNumber) = __mkSmallInteger(errno);
-        RETURN (nil);
+	printf("stat on '%s' for id\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = stat((char *) __stringVal(encodedPathName), &buf);
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+	if (ret >= 0) {
+	    ino = buf.st_ino;
+	    retVal = __MKUINT(ino);
+	    RETURN (retVal);
+	}
+	@global(LastErrorNumber) = __mkSmallInteger(errno);
+	RETURN (nil);
     }
     RETURN (nil);
 %}.
@@ -5744,30 +5744,30 @@
 %{  /* UNLIMITEDSTACK */
 #ifdef __SCHTEAM__
     if (pathName.isStringLike()) {
-        java.io.File file = new java.io.File( pathName.asString() );
-
-        if (file.exists()) {
-            return __c__._RETURN( new STString( file.getAbsolutePath() ));
-        }
+	java.io.File file = new java.io.File( pathName.asString() );
+
+	if (file.exists()) {
+	    return __c__._RETURN( new STString( file.getAbsolutePath() ));
+	}
     }
 #else
     if (__isStringLike(pathName)) {
 # ifdef HAS_REALPATH
-        extern char *realpath();
-
-        // POSIX-2008 says, that a NULL namebuffer causes realPath to malloc()
-        // the required memory. But this does not work as of 2013-04
-        char nameBuffer[MAXPATHLEN+1];
-        char *nameP = realpath(__stringVal(pathName), nameBuffer);
-        if (nameP) {
-            OBJ ret = __MKSTRING(nameP);
-            // free(nameP);
-            RETURN ( ret );
-        }
-        // fprintf(stderr, "stx[warning]: realpath(\"%s\") failed: %s\n", __stringVal(pathName), strerror(errno));
+	extern char *realpath();
+
+	// POSIX-2008 says, that a NULL namebuffer causes realPath to malloc()
+	// the required memory. But this does not work as of 2013-04
+	char nameBuffer[MAXPATHLEN+1];
+	char *nameP = realpath(__stringVal(pathName), nameBuffer);
+	if (nameP) {
+	    OBJ ret = __MKSTRING(nameP);
+	    // free(nameP);
+	    RETURN ( ret );
+	}
+	// fprintf(stderr, "stx[warning]: realpath(\"%s\") failed: %s\n", __stringVal(pathName), strerror(errno));
 # endif /* ! HAS_REALPATH */
     } else {
-        error = @symbol(argument);     // argument is not a string
+	error = @symbol(argument);     // argument is not a string
     }
 #endif
 %}.
@@ -5778,9 +5778,9 @@
     ^ nil
 
     "
-        self primPathNameOf:'.'
-        self primPathNameOf:'/murks/quatsch/bla/.'
-        self primPathNameOf:5555
+	self primPathNameOf:'.'
+	self primPathNameOf:'/murks/quatsch/bla/.'
+	self primPathNameOf:5555
     "
 !
 
@@ -5789,7 +5789,7 @@
      For nonexistent files, nil is returned."
 
     "could be implemented as:
-        (self infoOf:aPathName) accessed
+	(self infoOf:aPathName) accessed
     "
     |osSeconds i encodedPathName|
 
@@ -5797,23 +5797,23 @@
 
 %{
     if (__isStringLike(encodedPathName)) {
-        struct stat buf;
-        time_t mtime;
-        int ret;
+	struct stat buf;
+	time_t mtime;
+	int ret;
 
 # ifdef TRACE_STAT_CALLS
-        printf("stat on '%s' for timeOfLastAccess\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = stat((char *) __stringVal(encodedPathName), &buf);
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-            RETURN (nil);
-        }
-        osSeconds = __MKUINT(buf.st_atime);
+	printf("stat on '%s' for timeOfLastAccess\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = stat((char *) __stringVal(encodedPathName), &buf);
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	    RETURN (nil);
+	}
+	osSeconds = __MKUINT(buf.st_atime);
     }
 %}.
     osSeconds notNil ifTrue:[^ Timestamp fromOSTime:(osSeconds * 1000)].
@@ -5832,7 +5832,7 @@
      For nonexistent files, nil is returned."
 
     "could be implemented as:
-        (self infoOf:aPathName) modified
+	(self infoOf:aPathName) modified
     "
 
     |osSeconds i encodedPathName|
@@ -5840,23 +5840,23 @@
     encodedPathName := self encodePath:aPathName.
 %{
     if (__isStringLike(encodedPathName)) {
-        struct stat buf;
-        int ret;
-        time_t mtime;
+	struct stat buf;
+	int ret;
+	time_t mtime;
 
 # ifdef TRACE_STAT_CALLS
-        printf("stat on '%s' for timeOfLastChange\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = stat((char *) __stringVal(encodedPathName), &buf);
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-            RETURN ( nil );
-        }
-        osSeconds = __MKUINT(buf.st_mtime);
+	printf("stat on '%s' for timeOfLastChange\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = stat((char *) __stringVal(encodedPathName), &buf);
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	    RETURN ( nil );
+	}
+	osSeconds = __MKUINT(buf.st_mtime);
     }
 %}.
     osSeconds notNil ifTrue:[^ Timestamp fromOSTime:(osSeconds * 1000)].
@@ -5881,55 +5881,55 @@
 
     "
      this could have been implemented as:
-        (self infoOf:aPathName) type
+	(self infoOf:aPathName) type
      but for huge directory searches the code below is faster
     "
 
 %{
     if (__isStringLike(encodedPathName)) {
-        struct stat buf;
-        int ret;
+	struct stat buf;
+	int ret;
 
 # ifdef TRACE_STAT_CALLS
-        printf("stat on '%s' for type\n", __stringVal(encodedPathName));
-# endif
-        __BEGIN_INTERRUPTABLE__
-        do {
-            ret = stat((char *) __stringVal(encodedPathName), &buf);
-        } while (ret < 0 && errno == EINTR);
-        __END_INTERRUPTABLE__
-        if (ret < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-            RETURN ( nil );
-        }
-        switch (buf.st_mode & S_IFMT) {
-            case S_IFDIR:
-                RETURN ( @symbol(directory) );
-            case S_IFREG:
-                RETURN ( @symbol(regular) );
+	printf("stat on '%s' for type\n", __stringVal(encodedPathName));
+# endif
+	__BEGIN_INTERRUPTABLE__
+	do {
+	    ret = stat((char *) __stringVal(encodedPathName), &buf);
+	} while (ret < 0 && errno == EINTR);
+	__END_INTERRUPTABLE__
+	if (ret < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	    RETURN ( nil );
+	}
+	switch (buf.st_mode & S_IFMT) {
+	    case S_IFDIR:
+		RETURN ( @symbol(directory) );
+	    case S_IFREG:
+		RETURN ( @symbol(regular) );
 # ifdef S_IFCHR
-            case S_IFCHR:
-                RETURN ( @symbol(characterSpecial) );
+	    case S_IFCHR:
+		RETURN ( @symbol(characterSpecial) );
 # endif
 # ifdef S_IFBLK
-            case S_IFBLK:
-                RETURN ( @symbol(blockSpecial) );
+	    case S_IFBLK:
+		RETURN ( @symbol(blockSpecial) );
 # endif
 # ifdef S_IFLNK
-            case S_IFLNK:
-                RETURN ( @symbol(symbolicLink) );
+	    case S_IFLNK:
+		RETURN ( @symbol(symbolicLink) );
 # endif
 # ifdef S_IFSOCK
-            case S_IFSOCK:
-                RETURN ( @symbol(socket) );
+	    case S_IFSOCK:
+		RETURN ( @symbol(socket) );
 # endif
 # ifdef S_IFIFO
-            case S_IFIFO:
-                RETURN ( @symbol(fifo) );
-# endif
-            default:
-                RETURN ( @symbol(unknown) );
-        }
+	    case S_IFIFO:
+		RETURN ( @symbol(fifo) );
+# endif
+	    default:
+		RETURN ( @symbol(unknown) );
+	}
     }
 %}.
     i := self infoOf:aPathName.
@@ -5971,8 +5971,8 @@
 
     if (__isSmallInteger(signalNumber)) {
 #ifdef SIG_DFL
-        signal(__intVal(signalNumber), SIG_DFL);
-        RETURN (self);
+	signal(__intVal(signalNumber), SIG_DFL);
+	RETURN (self);
 #endif
     }
 %}.
@@ -6000,22 +6000,22 @@
 
 #if (defined(F_GETFL) && defined(F_SETFL) && defined(FASYNC)) || defined(SYSV4)
     if (__isSmallInteger(fd)) {
-        f = __intVal(fd);
+	f = __intVal(fd);
 # if defined(SYSV4)
-        ret = ioctl(f, I_SETSIG, 0);
+	ret = ioctl(f, I_SETSIG, 0);
 # else /*! SYSV4*/
-        flags = fcntl(f, F_GETFL, 0);
-        /*
-         * if already clear, there is no need for this syscall ...
-         */
-        if (flags & FASYNC) {
-            ret = fcntl(f, F_SETFL, flags & ~FASYNC);
-            if (ret >= 0) ret = flags;
-        } else {
-            ret = flags;
-        }
+	flags = fcntl(f, F_GETFL, 0);
+	/*
+	 * if already clear, there is no need for this syscall ...
+	 */
+	if (flags & FASYNC) {
+	    ret = fcntl(f, F_SETFL, flags & ~FASYNC);
+	    if (ret >= 0) ret = flags;
+	} else {
+	    ret = flags;
+	}
 # endif /* !SYSV4 */
-        RETURN ( __mkSmallInteger(ret) );
+	RETURN ( __mkSmallInteger(ret) );
     }
 #endif
 %}.
@@ -6040,23 +6040,23 @@
 %{  /* NOCONTEXT */
 #ifdef __SCHTEAM__
     if (signalNumber.isSmallInteger()) {
-        int sigNo = signalNumber.intValue();
-
-        if (sigNo != 0) {
-            java.lang.System.err.println("ignored disable-signal: "+sigNo);
-        }
-        return context._RETURN(self);
+	int sigNo = signalNumber.intValue();
+
+	if (sigNo != 0) {
+	    java.lang.System.err.println("ignored disable-signal: "+sigNo);
+	}
+	return context._RETURN(self);
     }
 #else
     if (__isSmallInteger(signalNumber)) {
-        int sigNo = __intVal(signalNumber);
-
-        if (sigNo == 0) {
-            RETURN (self);
-        }
+	int sigNo = __intVal(signalNumber);
+
+	if (sigNo == 0) {
+	    RETURN (self);
+	}
 # ifdef SIG_IGN
-        signal(sigNo, SIG_IGN);
-        RETURN (self);
+	signal(sigNo, SIG_IGN);
+	RETURN (self);
 # endif
     }
 #endif
@@ -6078,8 +6078,8 @@
 disableTimer
     "disable timer interrupts.
      WARNING:
-        the system will not operate correctly with timer interrupts
-        disabled, because no scheduling or timeouts are possible."
+	the system will not operate correctly with timer interrupts
+	disabled, because no scheduling or timeouts are possible."
 
 %{  /* NOCONTEXT */
 
@@ -6144,73 +6144,73 @@
 # endif
 
     if (__isSmallInteger(fd)) {
-        if (firstCall) {
+	if (firstCall) {
 # ifdef HAS_SIGACTION
-            struct sigaction act;
-
-            /*
-             * Do not add SA_RESTART here. A signal can cause a
-             * thread switch, another thread can do a garbage collect
-             * and restarted system calls may write into old
-             * (collected) addresses.
-             */
-
-            act.sa_flags = SA_SIGINFO; /* <- if you add more, remember dummys at the top */
-            sigemptyset(&act.sa_mask);
-            act.sa_handler = __signalIoInterrupt;
-            sigaction(THESIGNAL, &act, 0);
+	    struct sigaction act;
+
+	    /*
+	     * Do not add SA_RESTART here. A signal can cause a
+	     * thread switch, another thread can do a garbage collect
+	     * and restarted system calls may write into old
+	     * (collected) addresses.
+	     */
+
+	    act.sa_flags = SA_SIGINFO; /* <- if you add more, remember dummys at the top */
+	    sigemptyset(&act.sa_mask);
+	    act.sa_handler = __signalIoInterrupt;
+	    sigaction(THESIGNAL, &act, 0);
 # else
 #  ifdef HAS_SIGVEC
-            struct sigvec vec;
-
-            vec.sv_flags = SV_INTERRUPT;
-            sigemptyset(&vec.sv_mask);
-            vec.sv_handler = __signalIoInterrupt;
-            sigvec(THESIGNAL, &vec, NULL);
+	    struct sigvec vec;
+
+	    vec.sv_flags = SV_INTERRUPT;
+	    sigemptyset(&vec.sv_mask);
+	    vec.sv_handler = __signalIoInterrupt;
+	    sigvec(THESIGNAL, &vec, NULL);
 #  else
-            signal(THESIGNAL, __signalIoInterrupt);
+	    signal(THESIGNAL, __signalIoInterrupt);
 #  endif /* SIGVEC */
 # endif /* SIGACTION */
-            firstCall = 0;
-        }
+	    firstCall = 0;
+	}
 #undef THESIGNAL
 
-        f = __intVal(fd);
+	f = __intVal(fd);
 # if defined(SYSV4)
-        ret = ioctl(f, I_SETSIG, S_INPUT | S_HIPRI | S_ERROR | S_RDNORM | S_RDBAND | S_MSG | S_HANGUP);
+	ret = ioctl(f, I_SETSIG, S_INPUT | S_HIPRI | S_ERROR | S_RDNORM | S_RDBAND | S_MSG | S_HANGUP);
 # else /*! SYSV4*/
-        flags = fcntl(f, F_GETFL, 0);
-        /*
-         * if already set, there is no need for this syscall ...
-         */
-        if (flags & FASYNC) {
-            ret = flags;
-        } else {
-            ret = fcntl(f, F_SETFL, flags | FASYNC);
-            if (ret >= 0) ret = flags;
-        }
+	flags = fcntl(f, F_GETFL, 0);
+	/*
+	 * if already set, there is no need for this syscall ...
+	 */
+	if (flags & FASYNC) {
+	    ret = flags;
+	} else {
+	    ret = fcntl(f, F_SETFL, flags | FASYNC);
+	    if (ret >= 0) ret = flags;
+	}
 # endif /*!SYSV4*/
 
 # if defined(F_SETOWN) || defined(FIOSETOWN)
-        {
-            int pid;
-            int ok;
-
-            pid = getpid();
+	{
+	    int pid;
+	    int ok;
+
+	    pid = getpid();
 
 #  if defined(F_SETOWN)
-            ok = fcntl(f, F_SETOWN, pid);
-            /* printf("F_SETOWN returns %d (%d)\n", ret, errno); */
+	    ok = fcntl(f, F_SETOWN, pid);
+	    /* printf("F_SETOWN returns %d (%d)\n", ret, errno); */
 #  else
-            ok = ioctl(f, FIOSETOWN, &pid);
-            /* printf("FIOSETOWN returns %d (%d)\n", ret, errno); */
-#  endif
-            if (ok < 0) {
-                ret = ok;
-            }
-        }
-# endif
-        RETURN ( __MKUINT(ret) );
+	    ok = ioctl(f, FIOSETOWN, &pid);
+	    /* printf("FIOSETOWN returns %d (%d)\n", ret, errno); */
+#  endif
+	    if (ok < 0) {
+		ret = ok;
+	    }
+	}
+# endif
+	RETURN ( __MKUINT(ret) );
     }
 #endif
 %}.
@@ -6235,12 +6235,12 @@
 %{  /* NOCONTEXT */
 #ifdef __SCHTEAM__
     if (signalNumber.isSmallInteger()) {
-        int sigNo = signalNumber.intValue();
-
-        if (sigNo != 0) {
-            java.lang.System.err.println("ignored enable-signal: "+sigNo);
-        }
-        return context._RETURN(self);
+	int sigNo = signalNumber.intValue();
+
+	if (sigNo != 0) {
+	    java.lang.System.err.println("ignored enable-signal: "+sigNo);
+	}
+	return context._RETURN(self);
     }
 #else
 
@@ -6330,124 +6330,124 @@
      &&  (sigNr <= SIG_LIMIT)
 # endif
     ) {
-        /*
-         * standard signals are forced into standard handlers
-         * - all others go into general signalInterrupt
-         */
+	/*
+	 * standard signals are forced into standard handlers
+	 * - all others go into general signalInterrupt
+	 */
 # if defined(SIGPOLL) && defined(SIGIO)
-        if (sigNr == SIGPOLL)
-            sigNr = SIGIO;
-# endif
-        switch (sigNr) {
-            case 0:
-                /* enabling a non-supported signal */
-                RETURN (self);
+	if (sigNr == SIGPOLL)
+	    sigNr = SIGIO;
+# endif
+	switch (sigNr) {
+	    case 0:
+		/* enabling a non-supported signal */
+		RETURN (self);
 
 # ifdef SIGBREAK
-            case SIGBREAK:
+	    case SIGBREAK:
 # endif
 # ifdef SIGINT
-            case SIGINT:
+	    case SIGINT:
 # endif
 # ifdef SIGQUIT
-            case SIGQUIT:
+	    case SIGQUIT:
 # endif
 # if defined(SIGINT) || defined(SIGQUIT) || defined(SIGBREAK)
-                handler = __signalUserInterrupt;
-                break;
+		handler = __signalUserInterrupt;
+		break;
 # endif
 # ifdef SIGFPE
-            case SIGFPE:
-                handler = __signalFpExceptionInterrupt;
-                break;
+	    case SIGFPE:
+		handler = __signalFpExceptionInterrupt;
+		break;
 # endif
 
 # ifdef SIGPIPE
-            case SIGPIPE:
-                handler = __signalPIPEInterrupt;
-                break;
+	    case SIGPIPE:
+		handler = __signalPIPEInterrupt;
+		break;
 # endif
 # ifdef SIGBUS
-            case SIGBUS:
-                handler = __signalBUSInterrupt;
-                break;
+	    case SIGBUS:
+		handler = __signalBUSInterrupt;
+		break;
 # endif
 # ifdef SIGSEGV
-            case SIGSEGV:
-                handler = __signalSEGVInterrupt;
-                break;
+	    case SIGSEGV:
+		handler = __signalSEGVInterrupt;
+		break;
 # endif
 # ifdef SIGABRT
-            case SIGABRT:
-                handler = __signalAbortInterrupt;
-                break;
+	    case SIGABRT:
+		handler = __signalAbortInterrupt;
+		break;
 # endif
 # ifdef SIGILL
-            case SIGILL:
-                handler = __signalTrapInterrupt;
-                break;
+	    case SIGILL:
+		handler = __signalTrapInterrupt;
+		break;
 # endif
 # ifdef SIGEMT
-            case SIGEMT:
-                handler = __signalTrapInterrupt;
-                break;
+	    case SIGEMT:
+		handler = __signalTrapInterrupt;
+		break;
 # endif
 # ifdef SIGIO
-            case SIGIO:
-                handler = __signalIoInterrupt;
-                break;
+	    case SIGIO:
+		handler = __signalIoInterrupt;
+		break;
 # endif
 
 # ifdef CHILD_SIGNAL
-            case CHILD_SIGNAL:
-                handler = __signalChildInterrupt;
-                break;
+	    case CHILD_SIGNAL:
+		handler = __signalChildInterrupt;
+		break;
 # endif
 # ifdef SIGALRM
-            case SIGALRM:
-                handler = __signalTimerInterrupt;
-                break;
-# endif
-
-            default:
-                handler = __signalInterrupt;
-                break;
-        }
-
-        {
+	    case SIGALRM:
+		handler = __signalTimerInterrupt;
+		break;
+# endif
+
+	    default:
+		handler = __signalInterrupt;
+		break;
+	}
+
+	{
 # ifdef HAS_SIGACTION
-            struct sigaction act;
-
-            /*
-             * Do not add SA_RESTART here. A signal can cause a
-             * thread switch, another thread can do a garbage collect
-             * and restarted system calls may write into old
-             * (collected) addresses.
-             */
-
-            act.sa_flags = SA_SIGINFO; /* <- if you add more, remember dummys at the top */
-            sigemptyset(&act.sa_mask);
-            act.sa_handler = handler;
-            sigaction(sigNr, &act, 0);
+	    struct sigaction act;
+
+	    /*
+	     * Do not add SA_RESTART here. A signal can cause a
+	     * thread switch, another thread can do a garbage collect
+	     * and restarted system calls may write into old
+	     * (collected) addresses.
+	     */
+
+	    act.sa_flags = SA_SIGINFO; /* <- if you add more, remember dummys at the top */
+	    sigemptyset(&act.sa_mask);
+	    act.sa_handler = handler;
+	    sigaction(sigNr, &act, 0);
 # else
 #  ifdef HAS_SIGVEC
-            struct sigvec vec;
-
-            vec.sv_flags = SV_INTERRUPT;
-            sigemptyset(&vec.sv_mask);
-            vec.sv_handler = handler;
-            sigvec(sigNr, &vec, NULL);
+	    struct sigvec vec;
+
+	    vec.sv_flags = SV_INTERRUPT;
+	    sigemptyset(&vec.sv_mask);
+	    vec.sv_handler = handler;
+	    sigvec(sigNr, &vec, NULL);
 #  else
-            (void) signal(sigNr, handler);
-#  endif
-# endif
-        }
-
-        /*
-         * maybe, we should ret the old enable-status
-         * as boolean here ...
-         */
-        RETURN (self);
+	    (void) signal(sigNr, handler);
+#  endif
+# endif
+	}
+
+	/*
+	 * maybe, we should ret the old enable-status
+	 * as boolean here ...
+	 */
+	RETURN (self);
     }
 #endif /* not SCHTEAM */
 %}.
@@ -6464,10 +6464,10 @@
 %{  /* NOCONTEXT */
 #ifdef __SCHTEAM__
     if (milliSeconds.isSmallInteger()) {
-        long millis = milliSeconds.longValue();
-
-        java.lang.System.err.println("ignored enable-timer");
-        return context._RETURN(self);
+	long millis = milliSeconds.longValue();
+
+	java.lang.System.err.println("ignored enable-timer");
+	return context._RETURN(self);
     }
 #else
     int millis;
@@ -6476,60 +6476,60 @@
 
 # ifdef SIGALRM
     {
-        static int firstCall = 1;
+	static int firstCall = 1;
 #  ifndef __signalTimerInterrupt
-        extern void __signalTimerInterrupt(SIGHANDLER_ARG);
-#  endif
-
-        if (firstCall) {
+	extern void __signalTimerInterrupt(SIGHANDLER_ARG);
+#  endif
+
+	if (firstCall) {
 #  ifdef HAS_SIGACTION
-            struct sigaction act;
-
-            act.sa_flags = SA_SIGINFO; /* <- if you add more, remember dummys at the top */
-            sigemptyset(&act.sa_mask);
-            act.sa_handler = __signalTimerInterrupt;
-            sigaction(SIGALRM, &act, 0);
+	    struct sigaction act;
+
+	    act.sa_flags = SA_SIGINFO; /* <- if you add more, remember dummys at the top */
+	    sigemptyset(&act.sa_mask);
+	    act.sa_handler = __signalTimerInterrupt;
+	    sigaction(SIGALRM, &act, 0);
 #  else
 #   ifdef HAS_SIGVEC
-            struct sigvec vec;
-
-            vec.sv_flags = SV_INTERRUPT;
-            sigemptyset(&vec.sv_mask);
-            vec.sv_handler = __signalTimerInterrupt;
-            sigvec(SIGALRM, &vec, NULL);
+	    struct sigvec vec;
+
+	    vec.sv_flags = SV_INTERRUPT;
+	    sigemptyset(&vec.sv_mask);
+	    vec.sv_handler = __signalTimerInterrupt;
+	    sigvec(SIGALRM, &vec, NULL);
 #   else /* neither SIGACTION nor SIGVEC */
-            signal(SIGALRM, __signalTimerInterrupt);
+	    signal(SIGALRM, __signalTimerInterrupt);
 #   endif /* stupid system  */
 #  endif
-            firstCall = 0;
-        }
+	    firstCall = 0;
+	}
     }
 # endif /* SIGALRM */
 
 
 # if defined(ITIMER_REAL) && !defined(NO_SETITIMER)
     {
-        struct itimerval dt;
-
-        dt.it_interval.tv_sec = 0;
-        dt.it_interval.tv_usec = 0;
-        dt.it_value.tv_sec = millis / 1000;
-        dt.it_value.tv_usec = (millis % 1000) * 1000;
-        setitimer(ITIMER_REAL, &dt, 0);
-        RETURN (true);
+	struct itimerval dt;
+
+	dt.it_interval.tv_sec = 0;
+	dt.it_interval.tv_usec = 0;
+	dt.it_value.tv_sec = millis / 1000;
+	dt.it_value.tv_usec = (millis % 1000) * 1000;
+	setitimer(ITIMER_REAL, &dt, 0);
+	RETURN (true);
     }
 # else /* no ITIMER_REAL */
 
 #  ifdef USE_SLOW_ALARM
     {
-        /*
-         * last fallback - use alarm (which only gives 1 second resolution).
-         * If the system does not support any of the above, you have to life
-         * with this. The consequence is that pressing CTRL-C processing and
-         * thread switching will take place much delayed.
-         */
-        alarm(1);
-        RETURN(true);
+	/*
+	 * last fallback - use alarm (which only gives 1 second resolution).
+	 * If the system does not support any of the above, you have to life
+	 * with this. The consequence is that pressing CTRL-C processing and
+	 * thread switching will take place much delayed.
+	 */
+	alarm(1);
+	RETURN(true);
     }
 #  endif
 # endif /* ITIMER_REAL */
@@ -6564,8 +6564,8 @@
      The process has a no chance to do some cleanup.
 
      WARNING: in order to avoid zombie processes (on unix),
-              you may have to fetch the processes exitstatus with
-              OperatingSystem>>getStatusOfProcess:aProcessId."
+	      you may have to fetch the processes exitstatus with
+	      OperatingSystem>>getStatusOfProcess:aProcessId."
 
     self sendSignal:(self sigKILL) to:processId toGroup:false toAll:false.
 
@@ -6577,8 +6577,8 @@
      The process has a no chance to do some cleanup.
 
      WARNING: in order to avoid zombie processes (on unix),
-              you may have to fetch the processes exitstatus with
-              OperatingSystem>>getStatusOfProcess:aProcessId."
+	      you may have to fetch the processes exitstatus with
+	      OperatingSystem>>getStatusOfProcess:aProcessId."
 
     self sendSignal:(self sigKILL) to:processGroupId toGroup:false toAll:true.
 
@@ -6592,9 +6592,9 @@
      Do not confuse UNIX signals with Smalltalk-Signals.
 
      WARNING: in order to avoid zombie processes (on unix),
-              you may have to fetch the processes exitstatus with
-              OperatingSystem>>getStatusOfProcess:aProcessId
-              if the signal terminates that process."
+	      you may have to fetch the processes exitstatus with
+	      OperatingSystem>>getStatusOfProcess:aProcessId
+	      if the signal terminates that process."
 
     ^ self sendSignal:signalNumber to:processId toGroup:false toAll:false
 !
@@ -6606,42 +6606,42 @@
      toAll:   sends the signal with pid negated
 
      From Unix man page:
-         If pid is greater than zero:
-             Sig is sent to the process whose ID is equal to pid.
-
-         If pid is zero:
-             Sig is sent to all processes whose group ID is equal to the process group ID of the
-             sender, and for which the process has permission; this is a variant of killpg(2).
-
-         If pid is -1:
-             If the user has super-user privileges, the signal is sent to all processes excluding
-             system processes and the process sending the signal.  If the user is not the super user,
-             the signal is sent to all processes with the same uid as the user, excluding the process
-             sending the signal.  No error is returned if any process could be signaled.
+	 If pid is greater than zero:
+	     Sig is sent to the process whose ID is equal to pid.
+
+	 If pid is zero:
+	     Sig is sent to all processes whose group ID is equal to the process group ID of the
+	     sender, and for which the process has permission; this is a variant of killpg(2).
+
+	 If pid is -1:
+	     If the user has super-user privileges, the signal is sent to all processes excluding
+	     system processes and the process sending the signal.  If the user is not the super user,
+	     the signal is sent to all processes with the same uid as the user, excluding the process
+	     sending the signal.  No error is returned if any process could be signaled.
 
      Do not confuse UNIX signals with Smalltalk-Signals.
 
      WARNING: in order to avoid zombie processes (on unix),
-              you may have to fetch the processes exitstatus with
-              OperatingSystem>>getStatusOfProcess:aProcessId
-              if the signal terminates that process."
+	      you may have to fetch the processes exitstatus with
+	      OperatingSystem>>getStatusOfProcess:aProcessId
+	      if the signal terminates that process."
 
 %{
     if (__bothSmallInteger(signalNumber, processId)) {
-        int sigNo, pid;
-
-        sigNo = __intVal(signalNumber);
-        pid = __intVal(processId);
-        if (toAllBoolean == true) {
-            pid = -pid;
-        } else if (toGroupBoolean == true) {
-            pid = 0;
-        }
-        if (kill(pid, sigNo) < 0) {
-            @global(LastErrorNumber) = __mkSmallInteger(errno);
-            RETURN ( false );
-        }
-        RETURN ( true );
+	int sigNo, pid;
+
+	sigNo = __intVal(signalNumber);
+	pid = __intVal(processId);
+	if (toAllBoolean == true) {
+	    pid = -pid;
+	} else if (toGroupBoolean == true) {
+	    pid = 0;
+	}
+	if (kill(pid, sigNo) < 0) {
+	    @global(LastErrorNumber) = __mkSmallInteger(errno);
+	    RETURN ( false );
+	}
+	RETURN ( true );
     }
 %}.
     "/
@@ -6658,7 +6658,7 @@
      On systems, where no virtual timer is available, use the real timer
      (which is of course less correct).
      OBSOLETE: the new messageTally runs as a high prio process, not using
-               spy interrupts."
+	       spy interrupts."
 
 %{  /* NOCONTEXT */
 
@@ -6697,7 +6697,7 @@
 stopSpyTimer
     "stop spy timing - disable spy timer.
      OBSOLETE: the new messageTally runs as a high prio process, not using
-               spy interrupts."
+	       spy interrupts."
 
 %{  /* NOCONTEXT */
 
@@ -6720,8 +6720,8 @@
      The process has a chance to do some cleanup.
 
      WARNING: in order to avoid zombie processes (on unix),
-              you may have to fetch the processes exitstatus with
-              OperatingSystem>>getStatusOfProcess:aProcessId."
+	      you may have to fetch the processes exitstatus with
+	      OperatingSystem>>getStatusOfProcess:aProcessId."
 
     self sendSignal:(self sigTERM) to:processId toGroup:false toAll:false.
 
@@ -6734,8 +6734,8 @@
      The process has a chance to do some cleanup.
 
      WARNING: in order to avoid zombie processes (on unix),
-              you may have to fetch the processes exitstatus with
-              OperatingSystem>>getStatusOfProcess:aProcessId."
+	      you may have to fetch the processes exitstatus with
+	      OperatingSystem>>getStatusOfProcess:aProcessId."
 
     self sendSignal:(self sigTERM) to:processGroupId toGroup:false toAll:true.
 
@@ -6758,8 +6758,8 @@
      int fds[2];
 
      if (socketpair(AF_UNIX, SOCK_STREAM, 0, fds) == -1) {
-        @global(LastErrorNumber) = __mkSmallInteger(errno);
-        RETURN ( nil );
+	@global(LastErrorNumber) = __mkSmallInteger(errno);
+	RETURN ( nil );
      }
 
      fd1 = __mkSmallInteger(fds[0]);
@@ -6767,7 +6767,7 @@
 #endif
 %}.
     fd1 notNil ifTrue:[
-        ^ Array with:fd1 with:fd2.
+	^ Array with:fd1 with:fd2.
     ].
     ^ nil
 !
@@ -6794,18 +6794,18 @@
 
     slaveName = _getpty(&_fdM, O_RDWR|O_NDELAY, 0600, 0);
     if ((slaveName != 0) && (_fdM >= 0)) {
-        _fdS = open(slaveName, O_RDWR);
-        if (_fdS < 0) {
-            (void)close(_fdM);
-            _fdS = _fdM = -1;
-        }
+	_fdS = open(slaveName, O_RDWR);
+	if (_fdS < 0) {
+	    (void)close(_fdM);
+	    _fdS = _fdM = -1;
+	}
     } else {
-        _fdM -1;
+	_fdM -1;
     }
     if ((_fdM >= 0) && (_fdS >= 0)) {
-        fdM = __mkSmallInteger(_fdM);
-        fdS = __mkSmallInteger(_fdS);
-        ptyName = __MKSTRING(slaveName);
+	fdM = __mkSmallInteger(_fdM);
+	fdS = __mkSmallInteger(_fdS);
+	ptyName = __MKSTRING(slaveName);
     }
 #   define PTY_IS_IMPLEMENTED 1
 #endif /* IRIX5 */
@@ -6821,37 +6821,37 @@
     _fdM = open("/dev/ptmx", O_RDWR | O_NOCTTY);
 
     if (_fdM >= 0) {
-        /*
-        ** grantpt() changes owner, group and mode of the pseudo-tty
-        */
-        grantpt(_fdM);
-        unlockpt(_fdM);
-        slaveName = ptsname(_fdM);
-
-        if (slaveName != NULL) {
-            /* printf("slave is: %s\n", slaveName); */
-            _fdS = open(slaveName, O_RDWR);
-            if (_fdS < 0) {
-                (void)close(_fdM);
-                _fdS = _fdM = -1;
-            }
+	/*
+	** grantpt() changes owner, group and mode of the pseudo-tty
+	*/
+	grantpt(_fdM);
+	unlockpt(_fdM);
+	slaveName = ptsname(_fdM);
+
+	if (slaveName != NULL) {
+	    /* printf("slave is: %s\n", slaveName); */
+	    _fdS = open(slaveName, O_RDWR);
+	    if (_fdS < 0) {
+		(void)close(_fdM);
+		_fdS = _fdM = -1;
+	    }
 #if defined(UNIXWARE) || defined(solaris)
-            else {
-                /* push terminal modules on stream */
-                ioctl(_fdS, I_PUSH, "ptem");
-                ioctl(_fdS, I_PUSH, "ldterm");
-            }
-#endif
-        } else {
-            (void)close(_fdM);
-            _fdS = _fdM = -1;
-        }
+	    else {
+		/* push terminal modules on stream */
+		ioctl(_fdS, I_PUSH, "ptem");
+		ioctl(_fdS, I_PUSH, "ldterm");
+	    }
+#endif
+	} else {
+	    (void)close(_fdM);
+	    _fdS = _fdM = -1;
+	}
     }
 
     if ((_fdM >= 0) && (_fdS >= 0)) {
-        fdM = __mkSmallInteger(_fdM);
-        fdS = __mkSmallInteger(_fdS);
-        ptyName = __MKSTRING(slaveName);
+	fdM = __mkSmallInteger(_fdM);
+	fdS = __mkSmallInteger(_fdS);
+	ptyName = __MKSTRING(slaveName);
     }
 #   define PTY_IS_IMPLEMENTED 1
 #endif /* HAS_UNIX98_PTY */
@@ -6919,57 +6919,57 @@
     strncpy(line, PTY_TEMPL, sizeof(PTY_TEMPL));
 
     if (ttygid == -2) {
-        struct group *gr;
-
-        if ((gr = getgrnam("tty")) != NULL)
-            ttygid = gr->gr_gid;
-        else
-            ttygid = -1;
+	struct group *gr;
+
+	if ((gr = getgrnam("tty")) != NULL)
+	    ttygid = gr->gr_gid;
+	else
+	    ttygid = -1;
     }
 
     for (cp1 = PTY_1_CHARS; *cp1; cp1++) {
-        line[len-2] = * cp1;
-
-        for( cp2 = PTY_2_CHARS; *cp2; cp2++ ) {
-            line[PT_INDEX] = 'p';
-            line[len-1] = *cp2;
-
-            if ((_fdM = open(line, O_RDWR, 0)) < 0) {
-                if (errno == ENOENT) {
-                    _fdM = _fdS = -1;
-                    goto getOutOfHere; /* out of ptys */
-                }
-            } else {
-                line[PT_INDEX] = 't';
-
-                /*
-                 * try to set owner and mode.
-                 * this works only if running under root
-                 */
-                (void) chown( line, getuid(), ttygid );
-                (void) chmod( line, S_IRUSR | S_IWUSR | S_IWGRP );
-
-                if( (_fdS = open(line, O_RDWR, 0)) >= 0 ) {
-                    slaveName = line;
-                    goto getOutOfHere; /* success */
-                }
-                (void) close(_fdM );
-            }
-        }
+	line[len-2] = * cp1;
+
+	for( cp2 = PTY_2_CHARS; *cp2; cp2++ ) {
+	    line[PT_INDEX] = 'p';
+	    line[len-1] = *cp2;
+
+	    if ((_fdM = open(line, O_RDWR, 0)) < 0) {
+		if (errno == ENOENT) {
+		    _fdM = _fdS = -1;
+		    goto getOutOfHere; /* out of ptys */
+		}
+	    } else {
+		line[PT_INDEX] = 't';
+
+		/*
+		 * try to set owner and mode.
+		 * this works only if running under root
+		 */
+		(void) chown( line, getuid(), ttygid );
+		(void) chmod( line, S_IRUSR | S_IWUSR | S_IWGRP );
+
+		if( (_fdS = open(line, O_RDWR, 0)) >= 0 ) {
+		    slaveName = line;
+		    goto getOutOfHere; /* success */
+		}
+		(void) close(_fdM );
+	    }
+	}
     }
   getOutOfHere: ;
 
     if ((_fdM >= 0) && (_fdS >= 0)) {
-        fdM = __mkSmallInteger(_fdM);
-        fdS = __mkSmallInteger(_fdS);
-        ptyName = __MKSTRING(slaveName);
+	fdM = __mkSmallInteger(_fdM);
+	fdS = __mkSmallInteger(_fdS);
+	ptyName = __MKSTRING(slaveName);
     }
 
 #endif /* ! defined(PTY_IS_IMPLEMENTED) */
 %}.
 
     fdM notNil ifTrue:[
-        ^ Array with:fdM with:fdS with:ptyName.
+	^ Array with:fdM with:fdS with:ptyName.
     ].
 
     ^ nil
@@ -7001,15 +7001,15 @@
      int fds[2];
 
      if (pipe(fds) < 0) {
-        @global(LastErrorNumber) = __mkSmallInteger(errno);
-        RETURN ( nil );
+	@global(LastErrorNumber) = __mkSmallInteger(errno);
+	RETURN ( nil );
      }
 
      fd1 = __mkSmallInteger(fds[0]);
      fd2 = __mkSmallInteger(fds[1]);
 %}.
     fd1 notNil ifTrue:[
-        ^ Array with:fd1 with:fd2.
+	^ Array with:fd1 with:fd2.
     ].
     ^ nil
 !
@@ -7021,12 +7021,12 @@
 
     printf("setMappingMaster fd:%d\n", (int)__intVal(fd));
     if (__isSmallInteger(fd)) {
-        if (tcgetattr( __intVal(fd), &switcher) < 0) RETURN (false);
-        switcher.c_iflag = 0;
-        switcher.c_oflag = 0;
-        if (tcsetattr( __intVal(fd), TCSANOW, &switcher) >= 0) {
-            RETURN (true);
-        }
+	if (tcgetattr( __intVal(fd), &switcher) < 0) RETURN (false);
+	switcher.c_iflag = 0;
+	switcher.c_oflag = 0;
+	if (tcsetattr( __intVal(fd), TCSANOW, &switcher) >= 0) {
+	    RETURN (true);
+	}
     }
 %}.
     ^ false
@@ -7041,11 +7041,11 @@
     if (__isSmallInteger(fd)
      && __isSmallInteger(w)
      && __isSmallInteger(h)) {
-        wsize.ws_row = (unsigned short)__intVal(h);
-        wsize.ws_col = (unsigned short)__intVal(w);
-        if (ioctl(__intVal(fd), TIOCSWINSZ, (char *)&wsize) >= 0) {
-            RETURN (true);
-        }
+	wsize.ws_row = (unsigned short)__intVal(h);
+	wsize.ws_col = (unsigned short)__intVal(w);
+	if (ioctl(__intVal(fd), TIOCSWINSZ, (char *)&wsize) >= 0) {
+	    RETURN (true);
+	}
     }
 #endif
 %}.
@@ -7059,8 +7059,8 @@
 %{
 #ifndef NO_SOCKET
     if (__isSmallInteger(fileDescriptor)) {
-        shutdown(__smallIntegerVal(fileDescriptor), 1);
-        RETURN(self);
+	shutdown(__smallIntegerVal(fileDescriptor), 1);
+	RETURN(self);
     }
 #endif
 %}.
@@ -7072,36 +7072,36 @@
 closeLeftOverFiles
     "a bad bad kludge and workaround for a big bug in the linux
      getAddrInfo implementation:
-        if it gets interrupted (via a timer, for example), its domain-name
-        socket remains open and is NEVER closed.
-        These open files collect up and lead to no-more-files eventually.
+	if it gets interrupted (via a timer, for example), its domain-name
+	socket remains open and is NEVER closed.
+	These open files collect up and lead to no-more-files eventually.
      Invoking this method helps in this situation."
 
     |p|
 
     p := PipeStream
-            readingFrom:('lsof -p ' , (OperatingSystem getProcessId printString)).
+	    readingFrom:('lsof -p ' , (OperatingSystem getProcessId printString)).
 
     p linesDo:[:line |
-        |words fd|
-
-        words := line asCollectionOfWords.
-        "/ COMMAND PID USER   FD   TYPE     DEVICE    SIZE    NODE NAME
-        words first = 'stx' ifTrue:[
-            words second = (OperatingSystem getProcessId printString) ifTrue:[
-                (words fourth endsWith:'u') ifTrue:[
-                    (words fifth = 'IPv4') ifTrue:[
-                        (words seventh = 'UDP') ifTrue:[
-                            (words last endsWith:'domain') ifTrue:[
-                                fd := Number readFrom:(words fourth copyButLast).
+	|words fd|
+
+	words := line asCollectionOfWords.
+	"/ COMMAND PID USER   FD   TYPE     DEVICE    SIZE    NODE NAME
+	words first = 'stx' ifTrue:[
+	    words second = (OperatingSystem getProcessId printString) ifTrue:[
+		(words fourth endsWith:'u') ifTrue:[
+		    (words fifth = 'IPv4') ifTrue:[
+			(words seventh = 'UDP') ifTrue:[
+			    (words last endsWith:'domain') ifTrue:[
+				fd := Number readFrom:(words fourth copyButLast).
 Transcript showCR:line.
-                                OperatingSystem closeFd:fd.
-                            ]
-                        ]
-                    ]
-                ]
-            ]
-        ]
+				OperatingSystem closeFd:fd.
+			    ]
+			]
+		    ]
+		]
+	    ]
+	]
     ].
     p close.
 
@@ -7118,10 +7118,10 @@
     int dupFd;
 
     if (__isSmallInteger(aFileDescriptor)) {
-        dupFd = dup(__smallIntegerVal(aFileDescriptor));
-        if (dupFd >= 0) {
-            RETURN(__mkSmallInteger(dupFd));
-        }
+	dupFd = dup(__smallIntegerVal(aFileDescriptor));
+	if (dupFd >= 0) {
+	    RETURN(__mkSmallInteger(dupFd));
+	}
     }
 %}.
     ^ self primitiveFailed.
@@ -7170,49 +7170,49 @@
 getDomainName
     "return the domain this host is in.
      Notice:
-        not all systems support this; on some, #unknown is returned."
+	not all systems support this; on some, #unknown is returned."
 
     |domainName idx hostName primDomainName|
 
     "/ use cached value, if present
     (DomainName notNil and:[DomainName ~~ #unknown]) ifTrue:[
-        ^ DomainName
+	^ DomainName
     ].
 
     primDomainName := domainName := self primGetDomainName.
     domainName = '(none)' ifTrue:[
-        domainName := nil.
+	domainName := nil.
     ].
     domainName isEmptyOrNil ifTrue:[
-        "sometimes, we can extract the domainName from the hostName ..."
-        hostName := self primGetHostName.
-        hostName notNil ifTrue:[
-            idx := hostName indexOf:$..
-            idx ~~ 0 ifTrue:[
-                domainName := hostName copyFrom:idx+1.
-            ]
-        ].
-        domainName isEmptyOrNil ifTrue:[
-            "/ fallBack
-            domainName := self getEnvironment:'DOMAIN'.
-
-            "if #primGetDomainName did work, /bin/domainname would return the same result"
-            (domainName isNil and:[primDomainName isNil]) ifTrue:[
-                domainName := self getCommandOutputFrom:'/bin/domainname'.
-                (domainName isEmptyOrNil or:[ domainName = '(none)' ]) ifTrue:[
-                    domainName := nil.
-                ].
-            ].
-            domainName isNil ifTrue:[
-                DomainName ~~ #unknown ifTrue:[
-                    "/ only warn once - the warning can be ignored, if you do not use the domain name
-                    ObjectMemory debugPrinting ifTrue:[
-                        'UnixOperatingSystem [info]: cannot find out domainname' infoPrintCR.
-                    ].
-                ].
-                domainName := #unknown.
-            ].
-        ].
+	"sometimes, we can extract the domainName from the hostName ..."
+	hostName := self primGetHostName.
+	hostName notNil ifTrue:[
+	    idx := hostName indexOf:$..
+	    idx ~~ 0 ifTrue:[
+		domainName := hostName copyFrom:idx+1.
+	    ]
+	].
+	domainName isEmptyOrNil ifTrue:[
+	    "/ fallBack
+	    domainName := self getEnvironment:'DOMAIN'.
+
+	    "if #primGetDomainName did work, /bin/domainname would return the same result"
+	    (domainName isNil and:[primDomainName isNil]) ifTrue:[
+		domainName := self getCommandOutputFrom:'/bin/domainname'.
+		(domainName isEmptyOrNil or:[ domainName = '(none)' ]) ifTrue:[
+		    domainName := nil.
+		].
+	    ].
+	    domainName isNil ifTrue:[
+		DomainName ~~ #unknown ifTrue:[
+		    "/ only warn once - the warning can be ignored, if you do not use the domain name
+		    ObjectMemory debugPrinting ifTrue:[
+			'UnixOperatingSystem [info]: cannot find out domainname' infoPrintCR.
+		    ].
+		].
+		domainName := #unknown.
+	    ].
+	].
     ].
 
     "cache, because domainName fetching may be expensive;
@@ -7248,9 +7248,9 @@
      * get the size of the environment
      */
     if (environ) {
-        for (env = environ; *env; env++) {
-            nEnv++;
-        }
+	for (env = environ; *env; env++) {
+	    nEnv++;
+	}
     }
 
     /*
@@ -7258,49 +7258,49 @@
      */
     resultArray = __ARRAY_NEW_INT(nEnv * 2);
     if (resultArray == nil) {
-        error = @symbol(allocationFailure);
-        goto bad;
+	error = @symbol(allocationFailure);
+	goto bad;
     }
 
     if (environ) {
-        int envIndex;
-
-        for (env = environ, envIndex = 0; *env; env++) {
-            OBJ t;
-            char *separatorPtr;
-
-            separatorPtr = strchr(*env, '=');
-            t = __MKSTRING_L(*env, separatorPtr-*env);
-            __arrayVal(resultArray)[envIndex++] = t;
-            __STORE(resultArray, t);
-            if (separatorPtr == 0) {
-                t = nil;
-            } else {
-                t = __MKSTRING(separatorPtr+1);
-            }
-            __arrayVal(resultArray)[envIndex++] = t;
-            __STORE(resultArray, t);
-        }
+	int envIndex;
+
+	for (env = environ, envIndex = 0; *env; env++) {
+	    OBJ t;
+	    char *separatorPtr;
+
+	    separatorPtr = strchr(*env, '=');
+	    t = __MKSTRING_L(*env, separatorPtr-*env);
+	    __arrayVal(resultArray)[envIndex++] = t;
+	    __STORE(resultArray, t);
+	    if (separatorPtr == 0) {
+		t = nil;
+	    } else {
+		t = __MKSTRING(separatorPtr+1);
+	    }
+	    __arrayVal(resultArray)[envIndex++] = t;
+	    __STORE(resultArray, t);
+	}
     }
 
 bad:;
 %}.
     error notNil ifTrue:[
-        ^ self primitiveFailed:error.
+	^ self primitiveFailed:error.
     ].
 
     sz := resultArray size.
     dict := Dictionary new:(sz // 2).
     1 to:sz by:2 do:[:i |
-        |key|
-
-        key := resultArray at:i.
-        key notNil ifTrue:[
-            "same behavior as getenv() - the first entry takes precedence"
-            (dict includesKey:key) ifFalse:[
-                dict at:key put:(resultArray at:i+1)
-            ].
-        ].
+	|key|
+
+	key := resultArray at:i.
+	key notNil ifTrue:[
+	    "same behavior as getenv() - the first entry takes precedence"
+	    (dict includesKey:key) ifFalse:[
+		dict at:key put:(resultArray at:i+1)
+	    ].
+	].
     ].
     ^ dict
 
@@ -7315,26 +7315,26 @@
 %{  /* NOCONTEXT */
 #ifdef __SCHTEAM__
     {
-        java.lang.String val = java.lang.System.getenv( aStringOrSymbol.asString() );
-        STObject retVal;
-
-        if (val == null) {
-            retVal = STObject.Nil;
-        } else {
-            retVal = new STString( val );
-        }
-        return context._RETURN( retVal );
-        /* NOTREACHED */
+	java.lang.String val = java.lang.System.getenv( aStringOrSymbol.asString() );
+	STObject retVal;
+
+	if (val == null) {
+	    retVal = STObject.Nil;
+	} else {
+	    retVal = new STString( val );
+	}
+	return context._RETURN( retVal );
+	/* NOTREACHED */
     }
 #else
     extern char *getenv();
 
     if (__isStringLike(aStringOrSymbol)) {
-        char *env =  getenv(__stringVal(aStringOrSymbol));
-        if (env) {
-            RETURN ( __MKSTRING(env) );
-        }
-        RETURN ( nil );
+	char *env =  getenv(__stringVal(aStringOrSymbol));
+	if (env) {
+	    RETURN ( __MKSTRING(env) );
+	}
+	RETURN ( nil );
     }
 #endif /* not SCHTEAM */
 %}.
@@ -7357,22 +7357,22 @@
     |hostName|
 
     (HostName notNil and:[HostName ~~ #unknown]) ifTrue:[
-        ^ HostName
+	^ HostName
     ].
 
     hostName := self primGetHostName.
     hostName isNil ifTrue:[
-        "fallBack - in non-antique systes we never come here"
-        hostName := self getEnvironment:'HOST'.
-        hostName isNil ifTrue:[
-            hostName := self getCommandOutputFrom:'/bin/hostname'
-        ].
-        hostName isNil ifTrue:[
-            HostName ~~ #unknown ifTrue:[
-                'UnixOperatingSystem [info]: cannot find out hostname' infoPrintCR.
-                hostName := #unknown.
-            ].
-        ].
+	"fallBack - in non-antique systes we never come here"
+	hostName := self getEnvironment:'HOST'.
+	hostName isNil ifTrue:[
+	    hostName := self getCommandOutputFrom:'/bin/hostname'
+	].
+	hostName isNil ifTrue:[
+	    HostName ~~ #unknown ifTrue:[
+		'UnixOperatingSystem [info]: cannot find out hostname' infoPrintCR.
+		hostName := #unknown.
+	    ].
+	].
     ].
 
     "cache, because hostname fetching may be expensive;
@@ -7390,42 +7390,42 @@
     "return a dictionary filled with values from the locale information;
      Not all fields may be present, depending on the OS's setup and capabilities.
      Possible fields are:
-        decimalPoint                    <String>
-
-        thousandsSep                    <String>
-
-        internationalCurrencySymbol     <String>
-
-        currencySymbol                  <String>
-
-        monetaryDecimalPoint            <String>
-
-        monetaryThousandsSeparator      <String>
-
-        positiveSign                    <String>
-
-        negativeSign                    <String>
-
-        internationalFractionalDigits   <Integer>
-
-        fractionalDigits                <Integer>
-
-        positiveSignPrecedesCurrencySymbol      <Boolean>
-
-        negativeSignPrecedesCurrencySymbol      <Boolean>
-
-        positiveSignSeparatedBySpaceFromCurrencySymbol  <Boolean>
-
-        negativeSignSeparatedBySpaceFromCurrencySymbol  <Boolean>
-
-        positiveSignPosition                            <Symbol>
-                                                        one of: #parenthesesAround,
-                                                                #signPrecedes,
-                                                                #signSuceeds,
-                                                                #signPrecedesCurrencySymbol,
-                                                                #signSuceedsCurrencySymbol
-
-        negativeSignPosition                            <like above>
+	decimalPoint                    <String>
+
+	thousandsSep                    <String>
+
+	internationalCurrencySymbol     <String>
+
+	currencySymbol                  <String>
+
+	monetaryDecimalPoint            <String>
+
+	monetaryThousandsSeparator      <String>
+
+	positiveSign                    <String>
+
+	negativeSign                    <String>
+
+	internationalFractionalDigits   <Integer>
+
+	fractionalDigits                <Integer>
+
+	positiveSignPrecedesCurrencySymbol      <Boolean>
+
+	negativeSignPrecedesCurrencySymbol      <Boolean>
+
+	positiveSignSeparatedBySpaceFromCurrencySymbol  <Boolean>
+
+	negativeSignSeparatedBySpaceFromCurrencySymbol  <Boolean>
+
+	positiveSignPosition                            <Symbol>
+							one of: #parenthesesAround,
+								#signPrecedes,
+								#signSuceeds,
+								#signPrecedesCurrencySymbol,
+								#signSuceedsCurrencySymbol
+
+	negativeSignPosition                            <like above>
 
      it is up to the application to deal with undefined values.
 
@@ -7436,9 +7436,9 @@
     |info val|
 
     LocaleInfo notNil ifTrue:[
-        "/ return the internal info; useful on systems which do not
-        "/ support this.
-        ^ LocaleInfo
+	"/ return the internal info; useful on systems which do not
+	"/ support this.
+	^ LocaleInfo
     ].
 
     info := IdentityDictionary new.
@@ -7459,31 +7459,31 @@
     int   csNegSepBySpace;      /* money: 1 if currency symbol should be separated by a space from a negative value; 0 if no space */
     int   csPosSignPosition;    /* money: 0: ()'s around the value & currency symbol */
     int   csNegSignPosition;    /*        1: sign precedes the value & currency symbol */
-                                /*        2: sign succeeds the value & currency symbol */
-                                /*        3: sign immediately precedes the currency symbol */
-                                /*        4: sign immediately suceeds the currency symbol */
+				/*        2: sign succeeds the value & currency symbol */
+				/*        3: sign immediately precedes the currency symbol */
+				/*        4: sign immediately suceeds the currency symbol */
 
 #if defined(HAS_LOCALECONV)
     struct lconv *conf;
 
     conf = localeconv();
     if (conf) {
-        decimalPoint = conf->decimal_point;
-        thousandsSep = conf->thousands_sep;
-        intCurrencySymbol = conf->int_curr_symbol;
-        currencySymbol = conf->currency_symbol;
-        monDecimalPoint = conf->mon_decimal_point;
-        monThousandsSep = conf->mon_thousands_sep;
-        positiveSign = conf->positive_sign;
-        negativeSign = conf->negative_sign;
-        intFractDigits = conf->int_frac_digits;
-        fractDigits = conf->frac_digits;
-        csPosPrecedes = conf->p_cs_precedes;
-        csNegPrecedes = conf->n_cs_precedes;
-        csPosSepBySpace = conf->p_sep_by_space;
-        csNegSepBySpace = conf->n_sep_by_space;
-        csPosSignPosition = conf->p_sign_posn;
-        csNegSignPosition = conf->n_sign_posn;
+	decimalPoint = conf->decimal_point;
+	thousandsSep = conf->thousands_sep;
+	intCurrencySymbol = conf->int_curr_symbol;
+	currencySymbol = conf->currency_symbol;
+	monDecimalPoint = conf->mon_decimal_point;
+	monThousandsSep = conf->mon_thousands_sep;
+	positiveSign = conf->positive_sign;
+	negativeSign = conf->negative_sign;
+	intFractDigits = conf->int_frac_digits;
+	fractDigits = conf->frac_digits;
+	csPosPrecedes = conf->p_cs_precedes;
+	csNegPrecedes = conf->n_cs_precedes;
+	csPosSepBySpace = conf->p_sep_by_space;
+	csNegSepBySpace = conf->n_sep_by_space;
+	csPosSignPosition = conf->p_sign_posn;
+	csNegSignPosition = conf->n_sign_posn;
     }
 #else
     decimalPoint = (char *)0;
@@ -7504,129 +7504,129 @@
     csNegSignPosition = -1;
 #endif
     if (decimalPoint) {
-        val = __MKSTRING(decimalPoint);
-        __AT_PUT_(info, @symbol(decimalPoint), val);
+	val = __MKSTRING(decimalPoint);
+	__AT_PUT_(info, @symbol(decimalPoint), val);
     }
     if (thousandsSep) {
-        val = __MKSTRING(thousandsSep);
-        __AT_PUT_(info, @symbol(thousandsSeparator), val);
+	val = __MKSTRING(thousandsSep);
+	__AT_PUT_(info, @symbol(thousandsSeparator), val);
     }
     if (intCurrencySymbol) {
-        val = __MKSTRING(intCurrencySymbol);
-        __AT_PUT_(info, @symbol(internationCurrencySymbol), val);
+	val = __MKSTRING(intCurrencySymbol);
+	__AT_PUT_(info, @symbol(internationCurrencySymbol), val);
     }
     if (currencySymbol) {
-        val = __MKSTRING(currencySymbol);
-        __AT_PUT_(info, @symbol(currencySymbol), val);
+	val = __MKSTRING(currencySymbol);
+	__AT_PUT_(info, @symbol(currencySymbol), val);
     }
     if (monDecimalPoint) {
-        val = __MKSTRING(monDecimalPoint);
-        __AT_PUT_(info, @symbol(monetaryDecimalPoint), val);
+	val = __MKSTRING(monDecimalPoint);
+	__AT_PUT_(info, @symbol(monetaryDecimalPoint), val);
     }
     if (monThousandsSep) {
-        val = __MKSTRING(monThousandsSep);
-        __AT_PUT_(info, @symbol(monetaryThousandsSeparator), val);
+	val = __MKSTRING(monThousandsSep);
+	__AT_PUT_(info, @symbol(monetaryThousandsSeparator), val);
     }
     if (positiveSign) {
-        val = __MKSTRING(positiveSign);
-        __AT_PUT_(info, @symbol(positiveSign), val);
+	val = __MKSTRING(positiveSign);
+	__AT_PUT_(info, @symbol(positiveSign), val);
     }
     if (negativeSign) {
-        val = __MKSTRING(negativeSign);
-        __AT_PUT_(info, @symbol(negativeSign), val);
+	val = __MKSTRING(negativeSign);
+	__AT_PUT_(info, @symbol(negativeSign), val);
     }
     if (intFractDigits >= 0) {
-        __AT_PUT_(info, @symbol(internationalFractionalDigits),  __mkSmallInteger(intFractDigits));
+	__AT_PUT_(info, @symbol(internationalFractionalDigits),  __mkSmallInteger(intFractDigits));
     }
     if (fractDigits >= 0) {
-        __AT_PUT_(info, @symbol(fractionalDigits),  __mkSmallInteger(fractDigits));
+	__AT_PUT_(info, @symbol(fractionalDigits),  __mkSmallInteger(fractDigits));
     }
     if (csPosPrecedes >= 0) {
-        if (csPosPrecedes == 0) {
-            val = false;
-        } else {
-            val = true;
-        }
-        __AT_PUT_(info, @symbol(positiveSignPrecedesCurrencySymbol), val );
+	if (csPosPrecedes == 0) {
+	    val = false;
+	} else {
+	    val = true;
+	}
+	__AT_PUT_(info, @symbol(positiveSignPrecedesCurrencySymbol), val );
     }
     if (csNegPrecedes >= 0) {
-        if (csNegPrecedes == 0) {
-            val = false;
-        } else {
-            val = true;
-        }
-        __AT_PUT_(info, @symbol(negativeSignPrecedesCurrencySymbol), val );
+	if (csNegPrecedes == 0) {
+	    val = false;
+	} else {
+	    val = true;
+	}
+	__AT_PUT_(info, @symbol(negativeSignPrecedesCurrencySymbol), val );
     }
     if (csPosSepBySpace >= 0) {
-        if (csPosSepBySpace == 0) {
-            val = false;
-        } else {
-            val = true;
-        }
-        __AT_PUT_(info, @symbol(positiveSignSeparatedBySpaceFromCurrencySymbol), val);
+	if (csPosSepBySpace == 0) {
+	    val = false;
+	} else {
+	    val = true;
+	}
+	__AT_PUT_(info, @symbol(positiveSignSeparatedBySpaceFromCurrencySymbol), val);
     }
     if (csNegSepBySpace >= 0) {
-        if (csNegSepBySpace == 0) {
-            val = false;
-        } else {
-            val = true;
-        }
-        __AT_PUT_(info, @symbol(negativeSignSeparatedBySpaceFromCurrencySymbol), val);
+	if (csNegSepBySpace == 0) {
+	    val = false;
+	} else {
+	    val = true;
+	}
+	__AT_PUT_(info, @symbol(negativeSignSeparatedBySpaceFromCurrencySymbol), val);
     }
     switch (csPosSignPosition) {
-        case 0:
-            val = @symbol(parenthesesAround);
-            break;
-
-        case 1:
-            val = @symbol(signPrecedes);
-            break;
-
-        case 2:
-            val = @symbol(signSuceeds);
-            break;
-
-        case 3:
-            val = @symbol(signPrecedesCurrencySymbol);
-            break;
-
-        case 4:
-            val = @symbol(signSuceedsCurrencySymbol);
-            break;
-
-        default:
-            val = nil;
+	case 0:
+	    val = @symbol(parenthesesAround);
+	    break;
+
+	case 1:
+	    val = @symbol(signPrecedes);
+	    break;
+
+	case 2:
+	    val = @symbol(signSuceeds);
+	    break;
+
+	case 3:
+	    val = @symbol(signPrecedesCurrencySymbol);
+	    break;
+
+	case 4:
+	    val = @symbol(signSuceedsCurrencySymbol);
+	    break;
+
+	default:
+	    val = nil;
     }
     if (val != nil) {
-        __AT_PUT_(info, @symbol(positiveSignPosition), val);
+	__AT_PUT_(info, @symbol(positiveSignPosition), val);
     }
 
     switch (csNegSignPosition) {
-        case 0:
-            val = @symbol(parenthesesAround);
-            break;
-
-        case 1:
-            val = @symbol(signPrecedes);
-            break;
-
-        case 2:
-            val = @symbol(signSuceeds);
-            break;
-
-        case 3:
-            val = @symbol(signPrecedesCurrencySymbol);
-            break;
-
-        case 4:
-            val = @symbol(signSuceedsCurrencySymbol);
-            break;
-
-        default:
-            val = nil;
+	case 0:
+	    val = @symbol(parenthesesAround);
+	    break;
+
+	case 1:
+	    val = @symbol(signPrecedes);
+	    break;
+
+	case 2:
+	    val = @symbol(signSuceeds);
+	    break;
+
+	case 3:
+	    val = @symbol(signPrecedesCurrencySymbol);
+	    break;
+
+	case 4:
+	    val = @symbol(signSuceedsCurrencySymbol);
+	    break;
+
+	default:
+	    val = nil;
     }
     if (val != nil) {
-        __AT_PUT_(info, @symbol(negativeSignPosition), val);
+	__AT_PUT_(info, @symbol(negativeSignPosition), val);
     }
 %}.
     ^ info
@@ -7640,15 +7640,15 @@
 
 getNetworkAddressInfo
     "return a Dictionary of network interface information.
-        key -> name of interface
-        value -> a Set of network address
-                information for the interface - dictionaries containing the
-                information about the configuration of each interface in the system.
-                The dictionary keys are:
-                    #address
-                    #netmask
-                    #flags
-                    #destAddress"
+	key -> name of interface
+	value -> a Set of network address
+		information for the interface - dictionaries containing the
+		information about the configuration of each interface in the system.
+		The dictionary keys are:
+		    #address
+		    #netmask
+		    #flags
+		    #destAddress"
 
     |returnArray addressArray nameArray noOfIf retDictionary error retIndex|
 
@@ -7667,8 +7667,8 @@
     OBJ t;
 
     if (getifaddrs(&ifap) < 0) {
-        error = __MKSTRING("getifaddrs() failed");
-        goto out;
+	error = __MKSTRING("getifaddrs() failed");
+	goto out;
     }
 
     for (ifaLoop = ifap; ifaLoop != 0; ifaLoop = ifaLoop->ifa_next) n_ifa++;
@@ -7677,57 +7677,57 @@
     returnArray = __ARRAY_NEW_INT(n_ifa*6);
 
     if (returnArray == nil) {
-        /* Creating a string wouldn't work here */
-        error = @symbol(allocationFailure);
-        goto bad;
+	/* Creating a string wouldn't work here */
+	error = @symbol(allocationFailure);
+	goto bad;
     }
 
     for (ifaLoop = ifap; ifaLoop != 0; ifaLoop = ifaLoop->ifa_next) {
-        int family, len;
-
-        if (ifaLoop->ifa_addr == 0)
-               continue;
-        family = ifaLoop->ifa_addr->sa_family;
-        switch (family) {
-            case AF_INET:
-                len = sizeof(struct sockaddr_in);
-                break;
-            case AF_INET6:
-                len = sizeof(struct sockaddr_in6);
-                break;
+	int family, len;
+
+	if (ifaLoop->ifa_addr == 0)
+	       continue;
+	family = ifaLoop->ifa_addr->sa_family;
+	switch (family) {
+	    case AF_INET:
+		len = sizeof(struct sockaddr_in);
+		break;
+	    case AF_INET6:
+		len = sizeof(struct sockaddr_in6);
+		break;
 # ifdef WANT__AF_PACKET
-            case AF_PACKET:
-                len = sizeof(struct sockaddr_ll);
-                break;
+	    case AF_PACKET:
+		len = sizeof(struct sockaddr_ll);
+		break;
 #endif
 # ifdef WANT__AF_LINK
-            case AF_LINK:
-                len = sizeof(struct sockaddr_dl);
-                break;
-#endif
-            default:
-                /* skip */
-                continue;
-        };
-        t = __MKSTRING(ifaLoop->ifa_name);
-        __arrayVal(returnArray)[retI++] = t; __STORE(returnArray, t);
-        t = __MKUINT(ifaLoop->ifa_flags);
-        __arrayVal(returnArray)[retI++] = t; __STORE(returnArray, t);
-        t = __MKBYTEARRAY((char *)ifaLoop->ifa_addr, len);
-        __arrayVal(returnArray)[retI++] = t; __STORE(returnArray, t);
-        if (ifaLoop->ifa_netmask != 0) {
-            t = __MKBYTEARRAY((char *)ifaLoop->ifa_netmask, len);
-            __arrayVal(returnArray)[retI] = t; __STORE(returnArray, t);
-        }
-        retI++;
-        if ((ifaLoop->ifa_flags&IFF_POINTOPOINT) && ifaLoop->ifa_dstaddr != 0) {
-            t = __MKBYTEARRAY((char *)ifaLoop->ifa_dstaddr, len);
-            __arrayVal(returnArray)[retI++] = t; __STORE(returnArray, t);
-        } else if (retI++, ifaLoop->ifa_broadaddr != 0) {
-            t = __MKBYTEARRAY((char *)ifaLoop->ifa_broadaddr, len);
-            __arrayVal(returnArray)[retI] = t; __STORE(returnArray, t);
-        }
-        retI++;
+	    case AF_LINK:
+		len = sizeof(struct sockaddr_dl);
+		break;
+#endif
+	    default:
+		/* skip */
+		continue;
+	};
+	t = __MKSTRING(ifaLoop->ifa_name);
+	__arrayVal(returnArray)[retI++] = t; __STORE(returnArray, t);
+	t = __MKUINT(ifaLoop->ifa_flags);
+	__arrayVal(returnArray)[retI++] = t; __STORE(returnArray, t);
+	t = __MKBYTEARRAY((char *)ifaLoop->ifa_addr, len);
+	__arrayVal(returnArray)[retI++] = t; __STORE(returnArray, t);
+	if (ifaLoop->ifa_netmask != 0) {
+	    t = __MKBYTEARRAY((char *)ifaLoop->ifa_netmask, len);
+	    __arrayVal(returnArray)[retI] = t; __STORE(returnArray, t);
+	}
+	retI++;
+	if ((ifaLoop->ifa_flags&IFF_POINTOPOINT) && ifaLoop->ifa_dstaddr != 0) {
+	    t = __MKBYTEARRAY((char *)ifaLoop->ifa_dstaddr, len);
+	    __arrayVal(returnArray)[retI++] = t; __STORE(returnArray, t);
+	} else if (retI++, ifaLoop->ifa_broadaddr != 0) {
+	    t = __MKBYTEARRAY((char *)ifaLoop->ifa_broadaddr, len);
+	    __arrayVal(returnArray)[retI] = t; __STORE(returnArray, t);
+	}
+	retI++;
     }
 
 bad:
@@ -7737,40 +7737,40 @@
 %}.
 
     error notNil ifTrue:[
-        self primitiveFailed:error.
-        "return empty dictionary if proceeding from error"
-        ^  Dictionary new.
+	self primitiveFailed:error.
+	"return empty dictionary if proceeding from error"
+	^  Dictionary new.
     ].
 
     retDictionary := OrderedDictionary new:noOfIf.
     retIndex := 1.
 
     1 to:noOfIf do:[:cnt|
-        |name addressBytes set dict|
-
-        name := returnArray at:retIndex.
-        addressBytes := returnArray at:retIndex+2.
-
-        addressBytes notNil ifTrue:[
-            set := retDictionary at:name ifAbsentPut:[OrderedCollection new].
-            dict := Dictionary new:4.
-            dict at:#flags put:(returnArray at:retIndex+1).
-            dict at:#address put:(SocketAddress fromBytes:addressBytes).
-            addressBytes := returnArray at:retIndex+3.
-            addressBytes notNil ifTrue:[
-                dict at:#netMask put:(SocketAddress fromBytes:addressBytes).
-            ].
-            addressBytes := returnArray at:retIndex+4.
-            addressBytes notNil ifTrue:[
-                dict at:#destAddress put:(SocketAddress fromBytes:addressBytes).
-            ].
-            addressBytes := returnArray at:retIndex+5.
-            addressBytes notNil ifTrue:[
-                dict at:#broadcastAddress put:(SocketAddress fromBytes:addressBytes).
-            ].
-            set add:dict.
-        ].
-        retIndex := retIndex + 6.
+	|name addressBytes set dict|
+
+	name := returnArray at:retIndex.
+	addressBytes := returnArray at:retIndex+2.
+
+	addressBytes notNil ifTrue:[
+	    set := retDictionary at:name ifAbsentPut:[OrderedCollection new].
+	    dict := Dictionary new:4.
+	    dict at:#flags put:(returnArray at:retIndex+1).
+	    dict at:#address put:(SocketAddress fromBytes:addressBytes).
+	    addressBytes := returnArray at:retIndex+3.
+	    addressBytes notNil ifTrue:[
+		dict at:#netMask put:(SocketAddress fromBytes:addressBytes).
+	    ].
+	    addressBytes := returnArray at:retIndex+4.
+	    addressBytes notNil ifTrue:[
+		dict at:#destAddress put:(SocketAddress fromBytes:addressBytes).
+	    ].
+	    addressBytes := returnArray at:retIndex+5.
+	    addressBytes notNil ifTrue:[
+		dict at:#broadcastAddress put:(SocketAddress fromBytes:addressBytes).
+	    ].
+	    set add:dict.
+	].
+	retIndex := retIndex + 6.
     ].
 
     ^ retDictionary
@@ -7784,8 +7784,8 @@
 
 getNetworkAddresses
     "return a dictionary filled with
-        key -> name of interface
-        value -> the first socket address of the interface
+	key -> name of interface
+	value -> the first socket address of the interface
      for each interface"
 
     |addressInfo newDict|
@@ -7794,20 +7794,20 @@
     newDict := OrderedDictionary new:addressInfo size.
 
     addressInfo keysAndValuesDo:[:ifName :infoColl|
-        newDict at:ifName put:(infoColl first at:#address)
+	newDict at:ifName put:(infoColl first at:#address)
     ].
 
     ^ newDict.
 
     "
-        self getNetworkAddresses
+	self getNetworkAddresses
     "
 !
 
 getNetworkMACAddresses
     "return a dictionary filled with
-        key -> name of interface
-        value -> the MAC address (as ByteArray)
+	key -> name of interface
+	value -> the MAC address (as ByteArray)
      for each interface"
 
     |addressArray nameArray noOfIf retDictionary error|
@@ -7830,8 +7830,8 @@
 
     afinet_socket = socket(AF_INET, SOCK_DGRAM, 0);
     if (afinet_socket < 0) {
-        error = __MKSTRING("Cannot open socket");
-        goto bad;
+	error = __MKSTRING("Cannot open socket");
+	goto bad;
     }
 
     /*
@@ -7842,8 +7842,8 @@
     ifc.ifc_buf = (caddr_t) buf;
 
     if (ioctl (afinet_socket, SIOCGIFCONF, (caddr_t) &ifc) < 0) {
-        error = __MKSTRING("ioctl(SIOCGIFCONF) failed");
-        goto bad;
+	error = __MKSTRING("ioctl(SIOCGIFCONF) failed");
+	goto bad;
     }
 
     // get the number of interfaces in the returned structure
@@ -7859,19 +7859,19 @@
     n_ifs = ifc.ifc_len / sizeof (struct ifreq);
 #else
     {
-        unsigned char *cp = buf;
-        unsigned char *limit = buf + ifc.ifc_len;
-
-        n_ifs = 0;
-        while (cp < limit) {
-            int sz;
-
-            ifr = (struct ifreq *)cp;
-            sz = IFNAMSIZ + ifr->ifr_addr.sa_len;
-
-            cp += sz;
-            n_ifs++;
-        }
+	unsigned char *cp = buf;
+	unsigned char *limit = buf + ifc.ifc_len;
+
+	n_ifs = 0;
+	while (cp < limit) {
+	    int sz;
+
+	    ifr = (struct ifreq *)cp;
+	    sz = IFNAMSIZ + ifr->ifr_addr.sa_len;
+
+	    cp += sz;
+	    n_ifs++;
+	}
     }
 #endif
 
@@ -7879,9 +7879,9 @@
     addressArray = __ARRAY_NEW_INT(n_ifs);
 
     if (nameArray == nil || addressArray == nil) {
-        /* Creating a string wouldn/t work here */
-        error = @symbol(allocationFailure);
-        goto bad;
+	/* Creating a string wouldn/t work here */
+	error = @symbol(allocationFailure);
+	goto bad;
     }
 
     /*
@@ -7892,107 +7892,107 @@
     countOfIf = 0;
 
     for (i=0, ifr = ifc.ifc_req; i < n_ifs; i++) {
-        /*
-        ** Get Flags for this interface
-        */
+	/*
+	** Get Flags for this interface
+	*/
 
 # ifndef __osx__ // SIOCGIFFLAGS fails on osx (Q@sv: what is this needed for anyway?)
-        {
-            struct ifreq ifreq;
-            memcpy(&ifreq, ifr, sizeof(ifreq));
-            if (ioctl (afinet_socket, SIOCGIFFLAGS, &ifreq) < 0) {
-                if (@global(InfoPrinting) == true) {
-                    fprintf(stderr, "OS [warning]: ioctl(SIOCGIFFLAGS) failed");
-                }
-            }
-        }
-# endif
-        {
+	{
+	    struct ifreq ifreq;
+	    memcpy(&ifreq, ifr, sizeof(ifreq));
+	    if (ioctl (afinet_socket, SIOCGIFFLAGS, &ifreq) < 0) {
+		if (@global(InfoPrinting) == true) {
+		    fprintf(stderr, "OS [warning]: ioctl(SIOCGIFFLAGS) failed");
+		}
+	    }
+	}
+# endif
+	{
 # ifdef SIOCGIFHWADDR
-            /*
-            ** Get Hardware address for this interface
-            */
-            {
-                struct ifreq ifreq;
-                memcpy(&ifreq, ifr, sizeof(ifreq));
-                if (ioctl (afinet_socket, SIOCGIFHWADDR, &ifreq) >= 0) {
-                    t = __MKBYTEARRAY(&ifreq.ifr_hwaddr.sa_data, IFHWADDRLEN);
-                    __arrayVal(addressArray)[countOfIf] = t; __STORE(addressArray, t);
-                    t = __MKSTRING(&ifreq.ifr_name);
-                    __arrayVal(nameArray)[countOfIf] = t; __STORE(nameArray, t);
-                    countOfIf += 1;
-                }
-            }
+	    /*
+	    ** Get Hardware address for this interface
+	    */
+	    {
+		struct ifreq ifreq;
+		memcpy(&ifreq, ifr, sizeof(ifreq));
+		if (ioctl (afinet_socket, SIOCGIFHWADDR, &ifreq) >= 0) {
+		    t = __MKBYTEARRAY(&ifreq.ifr_hwaddr.sa_data, IFHWADDRLEN);
+		    __arrayVal(addressArray)[countOfIf] = t; __STORE(addressArray, t);
+		    t = __MKSTRING(&ifreq.ifr_name);
+		    __arrayVal(nameArray)[countOfIf] = t; __STORE(nameArray, t);
+		    countOfIf += 1;
+		}
+	    }
 
 #else
-            // macosx has no SIOCGIFHWADDR
-            // printf("family: %d\n", ifr->ifr_addr.sa_family);
-            // printf("name: %s\n", ifr->ifr_name);
-
-            if (ifr->ifr_addr.sa_family == AF_LINK) {
-                struct sockaddr_dl *sdl;
-                char *adr;
-                extern char *ether_ntoa();
-                unsigned char mac[6];
-                int a,b,c,d,e,f;
-
-                sdl = (struct sockaddr_dl *)&(ifr->ifr_addr);
-                adr = ether_ntoa(LLADDR(sdl));
-                // printf("name: %s adr: %s\n", ifr->ifr_name, adr);
-                sscanf(adr, "%x:%x:%x:%x:%x:%x", &a, &b, &c, &d, &e, &f);
-                mac[0] = a;
-                mac[1] = b;
-                mac[2] = c;
-                mac[3] = d;
-                mac[4] = e;
-                mac[5] = f;
-
-                t = __MKBYTEARRAY(mac, 6);
-                __arrayVal(addressArray)[countOfIf] = t; __STORE(addressArray, t);
-                t = __MKSTRING(ifr->ifr_name);
-                __arrayVal(nameArray)[countOfIf] = t; __STORE(nameArray, t);
-                countOfIf += 1;
-            }
-#endif
-        }
-
-        // see (sigh) comment above
+	    // macosx has no SIOCGIFHWADDR
+	    // printf("family: %d\n", ifr->ifr_addr.sa_family);
+	    // printf("name: %s\n", ifr->ifr_name);
+
+	    if (ifr->ifr_addr.sa_family == AF_LINK) {
+		struct sockaddr_dl *sdl;
+		char *adr;
+		extern char *ether_ntoa();
+		unsigned char mac[6];
+		int a,b,c,d,e,f;
+
+		sdl = (struct sockaddr_dl *)&(ifr->ifr_addr);
+		adr = ether_ntoa(LLADDR(sdl));
+		// printf("name: %s adr: %s\n", ifr->ifr_name, adr);
+		sscanf(adr, "%x:%x:%x:%x:%x:%x", &a, &b, &c, &d, &e, &f);
+		mac[0] = a;
+		mac[1] = b;
+		mac[2] = c;
+		mac[3] = d;
+		mac[4] = e;
+		mac[5] = f;
+
+		t = __MKBYTEARRAY(mac, 6);
+		__arrayVal(addressArray)[countOfIf] = t; __STORE(addressArray, t);
+		t = __MKSTRING(ifr->ifr_name);
+		__arrayVal(nameArray)[countOfIf] = t; __STORE(nameArray, t);
+		countOfIf += 1;
+	    }
+#endif
+	}
+
+	// see (sigh) comment above
 #ifndef __osx__
-        ifr++;
+	ifr++;
 #else
-        {
-            int sz = IFNAMSIZ + ifr->ifr_addr.sa_len;
-
-            ifr = (struct ifreq *)( ((char *)ifr)+sz );
-        }
+	{
+	    int sz = IFNAMSIZ + ifr->ifr_addr.sa_len;
+
+	    ifr = (struct ifreq *)( ((char *)ifr)+sz );
+	}
 #endif
     }
 
     noOfIf = __mkSmallInteger(countOfIf);
 bad:
     if (afinet_socket >= 0)
-        close(afinet_socket);
+	close(afinet_socket);
 #else
     error = @symbol(notSupported);
 #endif /* SIOCGIFHWADDR */
 %}.
 
     error notNil ifTrue:[
-        self primitiveFailed:error.
-        "return an empty dictionary if proceed from error"
-        ^  Dictionary new.
+	self primitiveFailed:error.
+	"return an empty dictionary if proceed from error"
+	^  Dictionary new.
     ].
 
     "we prefer OrderedDictionary here, because we want to keep the
      order as defined in the OS."
     retDictionary := OrderedDictionary new:noOfIf.
     1 to:noOfIf do:[:cnt|
-        |macAddress|
-
-        macAddress := addressArray at:cnt.
-        macAddress ~= #[0 0 0 0 0 0] ifTrue:[
-            retDictionary at:(nameArray at:cnt) put:macAddress.
-        ].
+	|macAddress|
+
+	macAddress := addressArray at:cnt.
+	macAddress ~= #[0 0 0 0 0 0] ifTrue:[
+	    retDictionary at:(nameArray at:cnt) put:macAddress.
+	].
     ].
 
     ^ retDictionary
@@ -8051,20 +8051,20 @@
     "if supported by the OS, return the systemID;
      a unique per machine identification.
      WARNING:
-        not all systems support this; on some, #unknown is returned."
+	not all systems support this; on some, #unknown is returned."
 
 %{  /* NOCONTEXT */
 #if defined(HAS_SYSINFO) && defined(SI_HW_SERIAL)
     {
-        char buffer[128];
-
-        buffer[0] = 0;
-        if (sysinfo(SI_HW_SERIAL, buffer, sizeof(buffer))) {
-            buffer[127] = 0;
-            if (strlen(buffer) > 0) {
-                RETURN(__MKSTRING(buffer));
-            }
-        }
+	char buffer[128];
+
+	buffer[0] = 0;
+	if (sysinfo(SI_HW_SERIAL, buffer, sizeof(buffer))) {
+	    buffer[127] = 0;
+	    if (strlen(buffer) > 0) {
+		RETURN(__MKSTRING(buffer));
+	    }
+	}
     }
 #elif defined(HAS_GETHOSTID)
     int runningId;
@@ -8081,9 +8081,9 @@
     OBJ arr;
 
     if ((retVal = syssgi(SGI_SYSID, idBuffer)) == 0) {
-        arr = __BYTEARRAY_UNINITIALIZED_NEW_INT(MAXSYSIDSIZE);
-        bcopy(idBuffer, __byteArrayVal(arr), MAXSYSIDSIZE);
-        RETURN (arr);
+	arr = __BYTEARRAY_UNINITIALIZED_NEW_INT(MAXSYSIDSIZE);
+	bcopy(idBuffer, __byteArrayVal(arr), MAXSYSIDSIZE);
+	RETURN (arr);
     }
 #endif
 %}.
@@ -8107,56 +8107,56 @@
        This method is mainly provided to augment error reports with some system
        information.
        (in case of system/version specific OS errors, conditional workarounds and patches
-        may be based upon this info).
+	may be based upon this info).
        Also, applications could enable/disable buffering or otherwise reduce
        their memory usage depending upon the amount of memory installed.
        Your application may make use of available information for tuning,
        but should NEVER DEPEND upon this in any way.
 
      The returned info may (or may not) contain:
-        #system -> some operating system identification (irix, Linux, nt, win32s ...)
-        #version -> OS version (some os version identification)
-        #release -> OS release (3.5, 1.2.1 ...)
-        #node   -> some host identification (hostname)
-        #domain  -> domain name (hosts domain)
-        #machine -> type of CPU (i586, mips ...)
+	#system -> some operating system identification (irix, Linux, nt, win32s ...)
+	#version -> OS version (some os version identification)
+	#release -> OS release (3.5, 1.2.1 ...)
+	#node   -> some host identification (hostname)
+	#domain  -> domain name (hosts domain)
+	#machine -> type of CPU (i586, mips ...)
 
      those are currently returned on some machines (no warranty)
      linux:
-        #totalRam         -> total amount of memory available
-        #sharedRam        -> amount of memory which is shared among processes
-                             (i.e. shared code)
-        #bufferRam        -> amount used for buffers
-        #swapSize         -> total size of swap space
-        #freeSwap         -> free amount in swapSpace
-        #numberOfCPUs     -> number of cpus in box
-        #extendedInstructions -> extended instruction set info
+	#totalRam         -> total amount of memory available
+	#sharedRam        -> amount of memory which is shared among processes
+			     (i.e. shared code)
+	#bufferRam        -> amount used for buffers
+	#swapSize         -> total size of swap space
+	#freeSwap         -> free amount in swapSpace
+	#numberOfCPUs     -> number of cpus in box
+	#extendedInstructions -> extended instruction set info
 
      osf:
-        #physicalRam      -> total amount of physical memory
-        #cpuType          -> type of cpu (more detailed than machine)
-        #numberOfCPUs     -> number of cpus in box
+	#physicalRam      -> total amount of physical memory
+	#cpuType          -> type of cpu (more detailed than machine)
+	#numberOfCPUs     -> number of cpus in box
 
      osx:
-        #physicalRam      -> total amount of physical memory
+	#physicalRam      -> total amount of physical memory
 
      solaris:
-        #physicalRam      -> total amount of physical memory
-        #availableRam     -> total available amount of physical memory (i.e. unused ram)
-        #freeRam          -> amount of free memory
-        #numberOfCPUs     -> number of cpus in box (online CPUS)
-        [#dCacheSize]     -> bytes in data cache (only available on some solaris versions)
-        [#iCacheSize]     -> bytes in data cache (only available on some solaris versions)
-        [#instructionSets]-> instruction sets available (only available on some solaris versions)
-        [#platform]       -> platform name (only available on some solaris versions)
+	#physicalRam      -> total amount of physical memory
+	#availableRam     -> total available amount of physical memory (i.e. unused ram)
+	#freeRam          -> amount of free memory
+	#numberOfCPUs     -> number of cpus in box (online CPUS)
+	[#dCacheSize]     -> bytes in data cache (only available on some solaris versions)
+	[#iCacheSize]     -> bytes in data cache (only available on some solaris versions)
+	[#instructionSets]-> instruction sets available (only available on some solaris versions)
+	[#platform]       -> platform name (only available on some solaris versions)
 
      hpux:
-        #physicalRam      -> total amount of physical memory in box
-        #activeRealMemory -> ? - read pstat documentation
-        #activeVirtualRam -> ? - read pstat documentation
-        #freeMemory       -> ? - read pstat documentation
-        #realMemory       -> ? (amount of memory left to user programs)
-        #virtualRam       -> ? - read pstat documentation
+	#physicalRam      -> total amount of physical memory in box
+	#activeRealMemory -> ? - read pstat documentation
+	#activeVirtualRam -> ? - read pstat documentation
+	#freeMemory       -> ? - read pstat documentation
+	#realMemory       -> ? (amount of memory left to user programs)
+	#virtualRam       -> ? - read pstat documentation
     "
 
     |sys node rel ver mach dom mtyp brel info arch cpuType cpuSpeed
@@ -8174,11 +8174,11 @@
     struct sysinfo infoBuffer;
 
     if (sysinfo(&infoBuffer) >= 0) {
-        totalRam   = __MKUINT(infoBuffer.totalram);
-        sharedRam = __MKUINT(infoBuffer.sharedram);
-        bufferRam = __MKUINT(infoBuffer.bufferram);
-        swapSize  = __MKUINT(infoBuffer.totalswap);
-        freeSwap  = __MKUINT(infoBuffer.freeswap);
+	totalRam   = __MKUINT(infoBuffer.totalram);
+	sharedRam = __MKUINT(infoBuffer.sharedram);
+	bufferRam = __MKUINT(infoBuffer.bufferram);
+	swapSize  = __MKUINT(infoBuffer.totalswap);
+	freeSwap  = __MKUINT(infoBuffer.freeswap);
     }
 #endif /* LINUX */
 
@@ -8204,18 +8204,18 @@
 
 #if defined(HAS_UNAME)
     {
-        struct utsname ubuff;
-
-        if (uname(&ubuff) >= 0) {
-            sys  = __MKSTRING(ubuff.sysname);
-            node = __MKSTRING(ubuff.nodename);
-            rel  = __MKSTRING(ubuff.release);
-            ver  = __MKSTRING(ubuff.version);
-            mach = __MKSTRING(ubuff.machine);
+	struct utsname ubuff;
+
+	if (uname(&ubuff) >= 0) {
+	    sys  = __MKSTRING(ubuff.sysname);
+	    node = __MKSTRING(ubuff.nodename);
+	    rel  = __MKSTRING(ubuff.release);
+	    ver  = __MKSTRING(ubuff.version);
+	    mach = __MKSTRING(ubuff.machine);
 # if defined(HAS_UTS_DOMAINNAME) || defined(_GNU_SOURCE)
-            dom  = __MKSTRING(ubuff.domainname);
+	    dom  = __MKSTRING(ubuff.domainname);
 # endif /* no HAS_UTS_DOMAINNAME */
-        }
+	}
     }
 
 #else /* no UNAME */
@@ -8228,41 +8228,41 @@
 #if defined(HAS_SYSINFO)
 # if defined(SI_ARCHITECTURE)
     if (arch == nil) {
-        char buffer[128];
-
-        if (sysinfo(SI_ARCHITECTURE, buffer, sizeof(buffer))) {
-            arch = __MKSTRING(buffer);
-        }
+	char buffer[128];
+
+	if (sysinfo(SI_ARCHITECTURE, buffer, sizeof(buffer))) {
+	    arch = __MKSTRING(buffer);
+	}
     }
 # endif /* SI_ARCHITECTURE */
 
 # if defined(SI_ISALIST)
     {
-        char buffer[128];
-
-        if (sysinfo(SI_ISALIST, buffer, sizeof(buffer))) {
-            instructionSets = __MKSTRING(buffer);
-        }
+	char buffer[128];
+
+	if (sysinfo(SI_ISALIST, buffer, sizeof(buffer))) {
+	    instructionSets = __MKSTRING(buffer);
+	}
     }
 # endif /* SI_ISALIST */
 
 # if defined(SI_PLATFORM)
     {
-        char buffer[128];
-
-        if (sysinfo(SI_PLATFORM, buffer, sizeof(buffer))) {
-            platform = __MKSTRING(buffer);
-        }
+	char buffer[128];
+
+	if (sysinfo(SI_PLATFORM, buffer, sizeof(buffer))) {
+	    platform = __MKSTRING(buffer);
+	}
     }
 # endif /* SI_PLATFORM */
 
 # if defined(SI_RELEASE)
     {
-        char buffer[128];
-
-        if (sysinfo(SI_RELEASE, buffer, sizeof(buffer))) {
-            rel = __MKSTRING(buffer);
-        }
+	char buffer[128];
+
+	if (sysinfo(SI_RELEASE, buffer, sizeof(buffer))) {
+	    rel = __MKSTRING(buffer);
+	}
     }
 # endif /* SI_RELEASE */
 #endif /* HAS_SYSINFO */
@@ -8270,426 +8270,426 @@
 #if defined(HAS_SYSCONF)
 # ifdef _SC_NPROCESSORS_ONLN
     {
-        long val;
-
-        val = sysconf(_SC_NPROCESSORS_ONLN);
-        if (val > 0) {
-            numberOfCPUs = __MKINT(val);
-        }
+	long val;
+
+	val = sysconf(_SC_NPROCESSORS_ONLN);
+	if (val > 0) {
+	    numberOfCPUs = __MKINT(val);
+	}
     }
 # endif
 # ifdef _SC_NPROCESSORS_CONF
     {
-        long val;
-
-        val = sysconf(_SC_NPROCESSORS_CONF);
-        if (val > 0) {
-            numberOfPhysicalCPUs = __MKINT(val);
-        }
+	long val;
+
+	val = sysconf(_SC_NPROCESSORS_CONF);
+	if (val > 0) {
+	    numberOfPhysicalCPUs = __MKINT(val);
+	}
     }
 # endif
 
 # if defined(_SC_PAGESIZE)
     {
-        long val;
-
-        val = sysconf(_SC_PAGESIZE);
-        if (val != -1) {
-            pageSize = __MKUINT(val);
-        }
+	long val;
+
+	val = sysconf(_SC_PAGESIZE);
+	if (val != -1) {
+	    pageSize = __MKUINT(val);
+	}
     }
 # endif
 
 # if defined(_SC_PHYS_PAGES)
     {
-        long val;
-
-        val = sysconf(_SC_PHYS_PAGES);
-        if (val != -1) {
-            physicalPages = __MKUINT(val);
-        }
+	long val;
+
+	val = sysconf(_SC_PHYS_PAGES);
+	if (val != -1) {
+	    physicalPages = __MKUINT(val);
+	}
     }
 # endif
 
 # if defined(_SC_AVPHYS_PAGES)
     {
-        long val;
-
-        val = sysconf(_SC_AVPHYS_PAGES);
-        if (val != -1) {
-            availablePages = __MKUINT(val);
-        }
+	long val;
+
+	val = sysconf(_SC_AVPHYS_PAGES);
+	if (val != -1) {
+	    availablePages = __MKUINT(val);
+	}
     }
 # endif
 
 # if defined(_SC_ICACHE_SZ)
     {
-        long val;
-
-        val = sysconf(_SC_ICACHE_SZ);
-        if (val != -1) {
-            iCacheSize = __MKUINT(val);
-        }
+	long val;
+
+	val = sysconf(_SC_ICACHE_SZ);
+	if (val != -1) {
+	    iCacheSize = __MKUINT(val);
+	}
     }
 # endif
 
 # if defined(_SC_DCACHE_SZ)
     {
-        long val;
-
-        val = sysconf(_SC_DCACHE_SZ);
-        if (val != -1) {
-            dCacheSize = __MKUINT(val);
-        }
+	long val;
+
+	val = sysconf(_SC_DCACHE_SZ);
+	if (val != -1) {
+	    dCacheSize = __MKUINT(val);
+	}
     }
 # endif
 #endif /* HAS_SYSCONF */
 
 #if defined(HAS_GETSYSINFO)
     {
-        INT index;
-        int retInt32 = 0;
+	INT index;
+	int retInt32 = 0;
 
 # if defined(GSI_CPU)
-        index = 0;
-        if (getsysinfo(GSI_CPU, &retInt32, sizeof(retInt32), &index, NULL) > 0) {
-            switch (retInt32) {
+	index = 0;
+	if (getsysinfo(GSI_CPU, &retInt32, sizeof(retInt32), &index, NULL) > 0) {
+	    switch (retInt32) {
 #  ifdef VAX_780
-                case VAX_780:
-                    cpuType = __MKSTRING("VAX_780");
-                    break;
+		case VAX_780:
+		    cpuType = __MKSTRING("VAX_780");
+		    break;
 #  endif
 #  ifdef VAX_750
-                case VAX_750:
-                    cpuType = __MKSTRING("VAX_750");
-                    break;
+		case VAX_750:
+		    cpuType = __MKSTRING("VAX_750");
+		    break;
 #  endif
 #  ifdef VAX_730
-                case VAX_730:
-                    cpuType = __MKSTRING("VAX_730");
-                    break;
+		case VAX_730:
+		    cpuType = __MKSTRING("VAX_730");
+		    break;
 #  endif
 #  ifdef VAX_8600
-                case VAX_8600:
-                    cpuType = __MKSTRING("VAX_8600");
-                    break;
+		case VAX_8600:
+		    cpuType = __MKSTRING("VAX_8600");
+		    break;
 #  endif
 #  ifdef VAX_8200
-                case VAX_8200:
-                    cpuType = __MKSTRING("VAX_8200");
-                    break;
+		case VAX_8200:
+		    cpuType = __MKSTRING("VAX_8200");
+		    break;
 #  endif
 #  ifdef VAX_8800
-                case VAX_8800:
-                    cpuType = __MKSTRING("VAX_8800");
-                    break;
+		case VAX_8800:
+		    cpuType = __MKSTRING("VAX_8800");
+		    break;
 #  endif
 #  ifdef MVAX_I
-                case MVAX_I:
-                    cpuType = __MKSTRING("MVAX_I");
-                    break;
+		case MVAX_I:
+		    cpuType = __MKSTRING("MVAX_I");
+		    break;
 #  endif
 #  ifdef MVAX_II
-                case MVAX_II:
-                    cpuType = __MKSTRING("MVAX_II");
-                    break;
+		case MVAX_II:
+		    cpuType = __MKSTRING("MVAX_II");
+		    break;
 #  endif
 #  ifdef V_VAX
-                case V_VAX:
-                    cpuType = __MKSTRING("V_VAX");
-                    break;
+		case V_VAX:
+		    cpuType = __MKSTRING("V_VAX");
+		    break;
 #  endif
 #  ifdef VAX_3600
-                case VAX_3600:
-                    cpuType = __MKSTRING("VAX_3600");
-                    break;
+		case VAX_3600:
+		    cpuType = __MKSTRING("VAX_3600");
+		    break;
 #  endif
 #  ifdef VAX_6200
-                case VAX_6200:
-                    cpuType = __MKSTRING("VAX_6200");
-                    break;
+		case VAX_6200:
+		    cpuType = __MKSTRING("VAX_6200");
+		    break;
 #  endif
 #  ifdef VAX_3400
-                case VAX_3400:
-                    cpuType = __MKSTRING("VAX_3400");
-                    break;
+		case VAX_3400:
+		    cpuType = __MKSTRING("VAX_3400");
+		    break;
 #  endif
 #  ifdef C_VAXSTAR
-                case C_VAXSTAR:
-                    cpuType = __MKSTRING("C_VAXSTAR");
-                    break;
+		case C_VAXSTAR:
+		    cpuType = __MKSTRING("C_VAXSTAR");
+		    break;
 #  endif
 #  ifdef VAX_60
-                case VAX_60:
-                    cpuType = __MKSTRING("VAX_60");
-                    break;
+		case VAX_60:
+		    cpuType = __MKSTRING("VAX_60");
+		    break;
 #  endif
 #  ifdef VAX_3900
-                case VAX_3900:
-                    cpuType = __MKSTRING("VAX_3900");
-                    break;
+		case VAX_3900:
+		    cpuType = __MKSTRING("VAX_3900");
+		    break;
 #  endif
 #  ifdef DS_3100
-                case DS_3100:
-                    cpuType = __MKSTRING("DS_3100");
-                    break;
+		case DS_3100:
+		    cpuType = __MKSTRING("DS_3100");
+		    break;
 #  endif
 #  ifdef VAX_8820
-                case VAX_8820:
-                    cpuType = __MKSTRING("VAX_8820");
-                    break;
+		case VAX_8820:
+		    cpuType = __MKSTRING("VAX_8820");
+		    break;
 #  endif
 #  ifdef DS_5400
-                case DS_5400:
-                    cpuType = __MKSTRING("DS_5400");
-                    break;
+		case DS_5400:
+		    cpuType = __MKSTRING("DS_5400");
+		    break;
 #  endif
 #  ifdef DS_5800
-                case DS_5800:
-                    cpuType = __MKSTRING("DS_5800");
-                    break;
+		case DS_5800:
+		    cpuType = __MKSTRING("DS_5800");
+		    break;
 #  endif
 #  ifdef DS_5000
-                case DS_5000:
-                    cpuType = __MKSTRING("DS_5000");
-                    break;
+		case DS_5000:
+		    cpuType = __MKSTRING("DS_5000");
+		    break;
 #  endif
 #  ifdef DS_CMAX
-                case DS_CMAX:
-                    cpuType = __MKSTRING("DS_CMAX");
-                    break;
+		case DS_CMAX:
+		    cpuType = __MKSTRING("DS_CMAX");
+		    break;
 #  endif
 #  ifdef VAX_6400
-                case VAX_6400:
-                    cpuType = __MKSTRING("VAX_6400");
-                    break;
+		case VAX_6400:
+		    cpuType = __MKSTRING("VAX_6400");
+		    break;
 #  endif
 #  ifdef VAXSTAR
-                case VAXSTAR:
-                    cpuType = __MKSTRING("VAXSTAR");
-                    break;
+		case VAXSTAR:
+		    cpuType = __MKSTRING("VAXSTAR");
+		    break;
 #  endif
 #  ifdef DS_5500
-                case DS_5500:
-                    cpuType = __MKSTRING("DS_5500");
-                    break;
+		case DS_5500:
+		    cpuType = __MKSTRING("DS_5500");
+		    break;
 #  endif
 #  ifdef DS_5100
-                case DS_5100:
-                    cpuType = __MKSTRING("DS_5100");
-                    break;
+		case DS_5100:
+		    cpuType = __MKSTRING("DS_5100");
+		    break;
 #  endif
 #  ifdef VAX_9000
-                case VAX_9000:
-                    cpuType = __MKSTRING("VAX_9000");
-                    break;
+		case VAX_9000:
+		    cpuType = __MKSTRING("VAX_9000");
+		    break;
 #  endif
 #  ifdef DS_500_100
-                case DS_500_100:
-                    cpuType = __MKSTRING("DS_500_100");
-                    break;
+		case DS_500_100:
+		    cpuType = __MKSTRING("DS_500_100");
+		    break;
 #  endif
 
 
 #  ifdef ALPHA_ADU
-                case ALPHA_ADU:
-                    cpuType = __MKSTRING("ALPHA_ADU");
-                    break;
+		case ALPHA_ADU:
+		    cpuType = __MKSTRING("ALPHA_ADU");
+		    break;
 #  endif
 #  ifdef DEC_4000
-                case DEC_4000:
-                    cpuType = __MKSTRING("DEC_4000");
-                    break;
+		case DEC_4000:
+		    cpuType = __MKSTRING("DEC_4000");
+		    break;
 #  endif
 #  ifdef DEC_3000_500
-                case DEC_3000_500:
-                    cpuType = __MKSTRING("DEC_3000_500");
-                    break;
+		case DEC_3000_500:
+		    cpuType = __MKSTRING("DEC_3000_500");
+		    break;
 #  endif
 #  ifdef DEC_7000
-                case DEC_7000:
-                    cpuType = __MKSTRING("DEC_7000");
-                    break;
+		case DEC_7000:
+		    cpuType = __MKSTRING("DEC_7000");
+		    break;
 #  endif
 #  ifdef DS_5000_300
-                case DS_5000_300:
-                    cpuType = __MKSTRING("DS_5000_300");
-                    break;
+		case DS_5000_300:
+		    cpuType = __MKSTRING("DS_5000_300");
+		    break;
 #  endif
 #  ifdef DEC_3000_300
-                case DEC_3000_300:
-                    cpuType = __MKSTRING("DEC_3000_300");
-                    break;
+		case DEC_3000_300:
+		    cpuType = __MKSTRING("DEC_3000_300");
+		    break;
 #  endif
 #  ifdef DEC_2000_300
-                case DEC_2000_300:
-                    cpuType = __MKSTRING("DEC_2000_300");
-                    break;
+		case DEC_2000_300:
+		    cpuType = __MKSTRING("DEC_2000_300");
+		    break;
 #  endif
 #  ifdef DEC_2100_A500
-                case DEC_2100_A500:
-                    cpuType = __MKSTRING("DEC_2100_A500");
-                    break;
+		case DEC_2100_A500:
+		    cpuType = __MKSTRING("DEC_2100_A500");
+		    break;
 #  endif
 #  ifdef DEC_2100_A50
-                case DEC_2100_A50:
-                    cpuType = __MKSTRING("DEC_2100_A50");
-                    break;
+		case DEC_2100_A50:
+		    cpuType = __MKSTRING("DEC_2100_A50");
+		    break;
 #  endif
 #  ifdef ALPHA_KN20AA
-                case ALPHA_KN20AA:
-                    cpuType = __MKSTRING("ALPHA_KN20AA");
-                    break;
+		case ALPHA_KN20AA:
+		    cpuType = __MKSTRING("ALPHA_KN20AA");
+		    break;
 #  endif
 #  ifdef DEC_21000
-                case DEC_21000:
-                    cpuType = __MKSTRING("DEC_21000");
-                    break;
+		case DEC_21000:
+		    cpuType = __MKSTRING("DEC_21000");
+		    break;
 #  endif
 #  ifdef DEC_AXPVME_64
-                case DEC_AXPVME_64:
-                    cpuType = __MKSTRING("DEC_AXPVME_64");
-                    break;
+		case DEC_AXPVME_64:
+		    cpuType = __MKSTRING("DEC_AXPVME_64");
+		    break;
 #  endif
 #  ifdef DEC_2100_C500
-                case DEC_2100_C500:
-                    cpuType = __MKSTRING("DEC_2100_C500");
-                    break;
+		case DEC_2100_C500:
+		    cpuType = __MKSTRING("DEC_2100_C500");
+		    break;
 #  endif
 #  ifdef DEC_AXPPCI_33
-                case DEC_AXPPCI_33:
-                    cpuType = __MKSTRING("DEC_AXPPCI_33");
-                    break;
+		case DEC_AXPPCI_33:
+		    cpuType = __MKSTRING("DEC_AXPPCI_33");
+		    break;
 #  endif
 #  ifdef DEC_1000
-                case DEC_1000:
-                    cpuType = __MKSTRING("DEC_1000");
-                    break;
+		case DEC_1000:
+		    cpuType = __MKSTRING("DEC_1000");
+		    break;
 #  endif
 #  ifdef EB64_PLUS
-                case EB64_PLUS:
-                    cpuType = __MKSTRING("EB64_PLUS");
-                    break;
+		case EB64_PLUS:
+		    cpuType = __MKSTRING("EB64_PLUS");
+		    break;
 #  endif
 #  ifdef LCA_EB66
-                case LCA_EB66:
-                    cpuType = __MKSTRING("LCA_EB66");
-                    break;
+		case LCA_EB66:
+		    cpuType = __MKSTRING("LCA_EB66");
+		    break;
 #  endif
 #  ifdef ALPHA_EB164
-                case ALPHA_EB164:
-                    cpuType = __MKSTRING("ALPHA_EB164");
-                    break;
+		case ALPHA_EB164:
+		    cpuType = __MKSTRING("ALPHA_EB164");
+		    break;
 #  endif
 #  ifdef DEC_EV45_PBP
-                case DEC_EV45_PBP:
-                    cpuType = __MKSTRING("DEC_EV45_PBP");
-                    break;
+		case DEC_EV45_PBP:
+		    cpuType = __MKSTRING("DEC_EV45_PBP");
+		    break;
 #  endif
 #  ifdef DEC_1000A
-                case DEC_1000A:
-                    cpuType = __MKSTRING("DEC_1000A");
-                    break;
+		case DEC_1000A:
+		    cpuType = __MKSTRING("DEC_1000A");
+		    break;
 #  endif
 #  ifdef DEC_4100
-                case DEC_4100:
-                    cpuType = __MKSTRING("DEC_4100");
-                    break;
+		case DEC_4100:
+		    cpuType = __MKSTRING("DEC_4100");
+		    break;
 #  endif
 #  ifdef DEC_ALPHAVME_224
-                case DEC_ALPHAVME_224:
-                    cpuType = __MKSTRING("DEC_ALPHAVME_224");
-                    break;
+		case DEC_ALPHAVME_224:
+		    cpuType = __MKSTRING("DEC_ALPHAVME_224");
+		    break;
 #  endif
 #  ifdef DEC_1000_5
-                case DEC_1000_5:
-                    cpuType = __MKSTRING("DEC_1000_5");
-                    break;
+		case DEC_1000_5:
+		    cpuType = __MKSTRING("DEC_1000_5");
+		    break;
 #  endif
 #  ifdef DEC_1000A_5
-                case DEC_1000A_5:
-                    cpuType = __MKSTRING("DEC_1000A_5");
-                    break;
+		case DEC_1000A_5:
+		    cpuType = __MKSTRING("DEC_1000A_5");
+		    break;
 #  endif
 #  ifdef DEC_EV56_PBP
-                case DEC_EV56_PBP:
-                    cpuType = __MKSTRING("DEC_EV56_PBP");
-                    break;
+		case DEC_EV56_PBP:
+		    cpuType = __MKSTRING("DEC_EV56_PBP");
+		    break;
 #  endif
 #  ifdef ALPHABOOK
-                case ALPHABOOK:
-                    cpuType = __MKSTRING("ALPHABOOK");
-                    break;
+		case ALPHABOOK:
+		    cpuType = __MKSTRING("ALPHABOOK");
+		    break;
 #  endif
 #  ifdef DEC_ALPHAVME_320
-                case DEC_ALPHAVME_320:
-                    cpuType = __MKSTRING("DEC_ALPHAVME_320");
-                    break;
+		case DEC_ALPHAVME_320:
+		    cpuType = __MKSTRING("DEC_ALPHAVME_320");
+		    break;
 #  endif
 #  ifdef DEC_550
-                case DEC_550:
-                    cpuType = __MKSTRING("DEC_550");
-                    break;
+		case DEC_550:
+		    cpuType = __MKSTRING("DEC_550");
+		    break;
 #  endif
 #  ifdef DEC_6600
-                case DEC_6600:
-                    cpuType = __MKSTRING("DEC_6600");
-                    break;
+		case DEC_6600:
+		    cpuType = __MKSTRING("DEC_6600");
+		    break;
 #  endif
 #  ifdef UNKN_SYSTEM
-                case UNKN_SYSTEM:
-                    cpuType = __MKSTRING("UNKN_SYSTEM");
-                    break;
-#  endif
-                default:
-                    cpuType = __MKSTRING("OTHER_DEC_SYSTEM");
-                    break;
-            }
-        }
+		case UNKN_SYSTEM:
+		    cpuType = __MKSTRING("UNKN_SYSTEM");
+		    break;
+#  endif
+		default:
+		    cpuType = __MKSTRING("OTHER_DEC_SYSTEM");
+		    break;
+	    }
+	}
 # endif /* GSI_CPU */
 
 # if defined(GSI_CPU_INFO)
-        /*
-         * stupid: OSF1 pre V4.0 has no mhz, but V4.0 has it.
-         * use the GSI_PLATFORM_NAME as a hint - it is only defined in
-         * V4.0 and higher ... (sigh)
-         */
+	/*
+	 * stupid: OSF1 pre V4.0 has no mhz, but V4.0 has it.
+	 * use the GSI_PLATFORM_NAME as a hint - it is only defined in
+	 * V4.0 and higher ... (sigh)
+	 */
 #  if defined(GSI_PLATFORM_NAME)
-        {
-            struct cpu_info cpuInfo;
-
-            index = 0;
-            if (getsysinfo(GSI_CPU_INFO, &cpuInfo, sizeof(cpuInfo), &index, NULL) > 0) {
-                cpuSpeed   = __MKUINT(cpuInfo.mhz);
-            }
-        }
+	{
+	    struct cpu_info cpuInfo;
+
+	    index = 0;
+	    if (getsysinfo(GSI_CPU_INFO, &cpuInfo, sizeof(cpuInfo), &index, NULL) > 0) {
+		cpuSpeed   = __MKUINT(cpuInfo.mhz);
+	    }
+	}
 #  endif
 # endif /* GSI_CPU_INFO */
 
 # if defined(GSI_CPUS_IN_BOX)
-        index = 0;
-        if (getsysinfo(GSI_CPUS_IN_BOX, &retInt32, sizeof(retInt32), &index, NULL) > 0) {
-            numberOfCPUs   = __MKUINT(retInt32);
-        }
+	index = 0;
+	if (getsysinfo(GSI_CPUS_IN_BOX, &retInt32, sizeof(retInt32), &index, NULL) > 0) {
+	    numberOfCPUs   = __MKUINT(retInt32);
+	}
 # endif /* GSI_CPUS_IN_BOX */
 
 # if defined(GSI_PHYSMEM)
-        index = 0;
-        if (getsysinfo(GSI_PHYSMEM, &retInt32, sizeof(retInt32), &index, NULL) > 0) {
-            INT bytes = retInt32 * 1024;
-
-            physicalRam   = __MKUINT(bytes);
-        }
+	index = 0;
+	if (getsysinfo(GSI_PHYSMEM, &retInt32, sizeof(retInt32), &index, NULL) > 0) {
+	    INT bytes = retInt32 * 1024;
+
+	    physicalRam   = __MKUINT(bytes);
+	}
 # endif /* GSI_PHYSMEM */
 
 # if defined(GSI_PLATFORM_NAME) && (!defined(HAS_SYSINFO) || !defined(SI_PLATFORM))
     {
-        char buffer[128];
-
-        index = 0;
-        if (getsysinfo(GSI_PLATFORM_NAME, buffer, sizeof(buffer), &index, NULL) > 0) {
-            platform = __MKSTRING(buffer);
-        }
+	char buffer[128];
+
+	index = 0;
+	if (getsysinfo(GSI_PLATFORM_NAME, buffer, sizeof(buffer), &index, NULL) > 0) {
+	    platform = __MKSTRING(buffer);
+	}
     }
 # endif /* GSI_PLATFORM_NAME */
 
@@ -8714,25 +8714,25 @@
 
 
     {
-        extern OBJ __getInstructionSetInfo();
-
-        extendedInstructions = __getInstructionSetInfo();
+	extern OBJ __getInstructionSetInfo();
+
+	extendedInstructions = __getInstructionSetInfo();
     }
 %}.
     sys isNil ifTrue:[
-        sys := self getSystemType.
+	sys := self getSystemType.
     ].
     node isNil ifTrue:[
-        node := self getHostName.
+	node := self getHostName.
     ].
     dom isNil ifTrue:[
-        dom := self getDomainName.
+	dom := self getDomainName.
     ].
     mach isNil ifTrue:[
-        mach := self getCPUType.
+	mach := self getCPUType.
     ].
     arch isNil ifTrue:[
-        arch := sys.
+	arch := sys.
     ].
 
     info := IdentityDictionary new.
@@ -8744,12 +8744,12 @@
     arch notNil ifTrue:[info at:#architecture put:arch].
     dom notNil ifTrue:[info at:#domain put:dom].
     (pageSize notNil and:[physicalPages notNil]) ifTrue:[
-        physicalRam := pageSize * physicalPages. "/ done here - could be largeInt.
+	physicalRam := pageSize * physicalPages. "/ done here - could be largeInt.
     ].
     physicalRam notNil ifTrue:[info at:#physicalRam put:physicalRam].
     (pageSize notNil and:[availablePages notNil]) ifTrue:[
-        availableRam := pageSize * availablePages. "/ done here - could be largeInt.
-        availableRam notNil ifTrue:[info at:#availableRam put:availableRam].
+	availableRam := pageSize * availablePages. "/ done here - could be largeInt.
+	availableRam notNil ifTrue:[info at:#availableRam put:availableRam].
     ].
     totalRam notNil ifTrue:[info at:#totalRam put:totalRam].
     sharedRam notNil ifTrue:[info at:#sharedRam put:sharedRam].
@@ -8789,7 +8789,7 @@
     |sys|
 
 %{
-#   ifdef NEXT
+#   ifdef __NEXT__
 #    define SYS_SYMBOL @symbol(next)
 #   endif
 
@@ -8804,7 +8804,7 @@
 
 %}.
     sys isNil ifTrue:[
-        ^ self getOSType
+	^ self getOSType
     ].
     ^ sys
 
@@ -8877,11 +8877,11 @@
 
 %{
     if (__isSmallInteger(pid)) {
-        /* in UNIX, a kill(pid, 0) is a noop used to check if a pid exists */
-        if (kill(__smallIntegerVal(pid), 0) < 0 && errno != EPERM) {
-            RETURN ( false );
-        }
-        RETURN ( true );
+	/* in UNIX, a kill(pid, 0) is a noop used to check if a pid exists */
+	if (kill(__smallIntegerVal(pid), 0) < 0 && errno != EPERM) {
+	    RETURN ( false );
+	}
+	RETURN ( true );
     }
 %}.
 
@@ -8908,11 +8908,11 @@
 maxFileNameLength
     "return the max number of characters in a filename.
      CAVEAT:
-         Actually, the following is somewhat wrong - some systems
-         support different sizes, depending on the volume.
-         We return a somewhat conservative number here.
-         Another entry, to query for volume specific max
-         will be added in the future."
+	 Actually, the following is somewhat wrong - some systems
+	 support different sizes, depending on the volume.
+	 We return a somewhat conservative number here.
+	 Another entry, to query for volume specific max
+	 will be added in the future."
 
 %{  /* NOCONTEXT */
 
@@ -8951,7 +8951,7 @@
 
      l = sysconf(_SC_OPEN_MAX);
      if (l >= 0) {
-         RETURN(__mkSmallInteger(l));
+	 RETURN(__mkSmallInteger(l));
      }
 %}.
      self primitiveFailed
@@ -8984,21 +8984,21 @@
 primGetDomainName
     "return the domain this host is in.
      Notice:
-        not all systems support this; on some, nil is returned."
+	not all systems support this; on some, nil is returned."
 
 %{  /* STACK: 2048 */
 #if defined(HAS_GETDOMAINNAME)
     char buffer[256];
 
     if (getdomainname(buffer, sizeof(buffer)) == 0) {
-        RETURN (__MKSTRING(buffer));
+	RETURN (__MKSTRING(buffer));
     }
 #else
 # if defined(HAS_UNAME) && defined(HAS_UTS_DOMAINNAME)
     struct utsname ubuff;
 
     if (uname(&ubuff) >= 0) {
-        RETURN (__MKSTRING(ubuff.domainname));
+	RETURN (__MKSTRING(ubuff.domainname));
     }
 # else
 #  if defined(HAS_SYSINFO) && defined(SI_SRPC_DOMAIN)
@@ -9006,7 +9006,7 @@
     int ret;
 
     if ((ret = sysinfo(SI_SRPC_DOMAIN, buffer, sizeof(buffer))) >= 0 && ret <= sizeof(buffer)) {
-        RETURN (__MKSTRING(buffer));
+	RETURN (__MKSTRING(buffer));
     }
 #  endif
 # endif
@@ -9025,7 +9025,7 @@
     "return the hostname we are running on - if there is
      a HOST environment variable, we are much faster here ...
      Notice:
-        not all systems support this; on some, nil is returned."
+	not all systems support this; on some, nil is returned."
 
 %{  /* STACK: 100000 */
 
@@ -9036,14 +9036,14 @@
     char buffer[256];
 
     if (gethostname(buffer, sizeof(buffer)) == 0) {
-        RETURN (__MKSTRING(buffer));
+	RETURN (__MKSTRING(buffer));
     }
 #else
 # if defined(HAS_UNAME)
     struct utsname ubuff;
 
     if (uname(&ubuff) >= 0) {
-        RETURN (__MKSTRING(ubuff.nodename));
+	RETURN (__MKSTRING(ubuff.nodename));
     }
 # else
 #  if defined(HAS_SYSINFO) && defined(SI_HOSTNAME)
@@ -9051,7 +9051,7 @@
     int ret;
 
     if ((ret = sysinfo(SI_HOSTNAME, buffer, sizeof(buffer))) >= 0 && ret <= sizeof(buffer)) {
-        RETURN (__MKSTRING(buffer));
+	RETURN (__MKSTRING(buffer));
     }
 #  endif
 # endif
@@ -9066,11 +9066,11 @@
 
 randomBytesInto:bufferOrInteger
     "If bufferOrInteger is a String or a ByteArray,
-        fill a given buffer with random bytes from the RtlGenRandom function
-        and answer the buffer.
+	fill a given buffer with random bytes from the RtlGenRandom function
+	and answer the buffer.
 
      If bufferOrInteger is a SmallInteger,
-        return this many bytes (max 4) as a SmallInteger.
+	return this many bytes (max 4) as a SmallInteger.
 
      Return nil on error (may raise PrimitiveFailure, too).
 
@@ -9092,7 +9092,7 @@
 #  endif
 
     inline int getrandom(void *buf, size_t buflen, unsigned int flags) {
-        return syscall(SYS_getrandom|__flag32, buf, buflen, flags);
+	return syscall(SYS_getrandom|__flag32, buf, buflen, flags);
     }
 # endif
 
@@ -9103,35 +9103,35 @@
     int wantInteger = 0;
 
     if (__isSmallInteger(bufferOrInteger)) {
-        wanted = __smallIntegerVal(bufferOrInteger);
-        if (wanted > sizeof(INT)) goto error;
-        buffer = (char *)&intBuffer;
-        wantInteger = 1;
+	wanted = __smallIntegerVal(bufferOrInteger);
+	if (wanted > sizeof(INT)) goto error;
+	buffer = (char *)&intBuffer;
+	wantInteger = 1;
     } else if (__isByteArray(bufferOrInteger)) {
-        wanted = __byteArraySize(bufferOrInteger);
-        buffer = __byteArrayVal(bufferOrInteger);
+	wanted = __byteArraySize(bufferOrInteger);
+	buffer = __byteArrayVal(bufferOrInteger);
     } else if (__isString(bufferOrInteger)) {
-        wanted = __stringSize(bufferOrInteger);
-        buffer = __stringVal(bufferOrInteger);
+	wanted = __stringSize(bufferOrInteger);
+	buffer = __stringVal(bufferOrInteger);
     } else
-        goto error;
+	goto error;
 
     do {
-        cnt = getrandom(buffer + gotSoFar, wanted - gotSoFar, 0);
-        if (cnt < 0) {
-            if (errno != EINTR && errno != EAGAIN)
-                goto error;
-            if (!wantInteger) {
-                // re-fetch buffer in case a garbage collect occurred meanwhile
-                buffer = __isByteArray(bufferOrInteger) ?
-                            __byteArrayVal(bufferOrInteger) : __stringVal(bufferOrInteger);
-            }
-        } else {
-            gotSoFar = gotSoFar + cnt;
-        }
+	cnt = getrandom(buffer + gotSoFar, wanted - gotSoFar, 0);
+	if (cnt < 0) {
+	    if (errno != EINTR && errno != EAGAIN)
+		goto error;
+	    if (!wantInteger) {
+		// re-fetch buffer in case a garbage collect occurred meanwhile
+		buffer = __isByteArray(bufferOrInteger) ?
+			    __byteArrayVal(bufferOrInteger) : __stringVal(bufferOrInteger);
+	    }
+	} else {
+	    gotSoFar = gotSoFar + cnt;
+	}
     } while (gotSoFar < wanted);
     if (wantInteger) {
-        RETURN(__mkSmallInteger(intBuffer & _MAX_INT));
+	RETURN(__mkSmallInteger(intBuffer & _MAX_INT));
     }
     RETURN(bufferOrInteger);
 # endif // SYS_getrandom
@@ -9142,12 +9142,12 @@
     ^ self primitiveFailed.
 
     "
-        self randomBytesInto:1.
-        self randomBytesInto:2.
-        self randomBytesInto:4.
-        self randomBytesInto:8.
-        self randomBytesInto:(ByteArray new:16).
-        self randomBytesInto:(String new:16).
+	self randomBytesInto:1.
+	self randomBytesInto:2.
+	self randomBytesInto:4.
+	self randomBytesInto:8.
+	self randomBytesInto:(ByteArray new:16).
+	self randomBytesInto:(String new:16).
     "
 !
 
@@ -9164,30 +9164,30 @@
     int valueSize;
 
     if (__isStringLike(aKeyStringOrSymbol)) {
-        if (aString == nil) {
-            /* env used only temporary for deregistration */
-            valueSize = 0;
-            env = __stringVal(aKeyStringOrSymbol);
-        } else if (__isStringLike(aString)) {
-            /* have to use stable memory for env */
-            valueSize = __stringSize(aString);
-            env = (char *)malloc(__stringSize(aKeyStringOrSymbol) + valueSize + 2);
-            if (env == 0)
-                goto err;
-            strcpy(env, __stringVal(aKeyStringOrSymbol));
-            strcat(env, "=");
-            strncat(env, __stringVal(aString), valueSize);
-        } else
-            goto err;
-
-        if (putenv(env) == 0) {
-            RETURN(self);
-        }
-
-        if (valueSize > 0) {
-            /* could not register, free */
-            free(env);
-        }
+	if (aString == nil) {
+	    /* env used only temporary for deregistration */
+	    valueSize = 0;
+	    env = __stringVal(aKeyStringOrSymbol);
+	} else if (__isStringLike(aString)) {
+	    /* have to use stable memory for env */
+	    valueSize = __stringSize(aString);
+	    env = (char *)malloc(__stringSize(aKeyStringOrSymbol) + valueSize + 2);
+	    if (env == 0)
+		goto err;
+	    strcpy(env, __stringVal(aKeyStringOrSymbol));
+	    strcat(env, "=");
+	    strncat(env, __stringVal(aString), valueSize);
+	} else
+	    goto err;
+
+	if (putenv(env) == 0) {
+	    RETURN(self);
+	}
+
+	if (valueSize > 0) {
+	    /* could not register, free */
+	    free(env);
+	}
 err:;
     }
 %}.
@@ -9220,42 +9220,42 @@
     char *__locale, *ret;
 
     if (categorySymbol == @symbol(LC_ALL)) {
-        __category = LC_ALL;
+	__category = LC_ALL;
     } else if (categorySymbol == @symbol(LC_COLLATE)) {
-        __category = LC_COLLATE;
+	__category = LC_COLLATE;
     } else if (categorySymbol == @symbol(LC_CTYPE)) {
-        __category = LC_CTYPE;
+	__category = LC_CTYPE;
     } else if (categorySymbol == @symbol(LC_MESSAGES)) {
-        __category = LC_MESSAGES;
+	__category = LC_MESSAGES;
     } else if (categorySymbol == @symbol(LC_MONETARY)) {
-        __category = LC_MONETARY;
+	__category = LC_MONETARY;
     } else if (categorySymbol == @symbol(LC_NUMERIC)) {
-        __category = LC_NUMERIC;
+	__category = LC_NUMERIC;
     } else if (categorySymbol == @symbol(LC_TIME)) {
-        __category = LC_TIME;
+	__category = LC_TIME;
     } else {
-        error = @symbol(argument1);
-        goto out;
+	error = @symbol(argument1);
+	goto out;
     }
 
     if (localeStringOrNil == nil) {
-        __locale = 0;
+	__locale = 0;
     } else if (__isStringLike(localeStringOrNil)){
-        __locale = __stringVal(localeStringOrNil);
+	__locale = __stringVal(localeStringOrNil);
     } else {
-        error = @symbol(argument1);
-        goto out;
+	error = @symbol(argument1);
+	goto out;
     }
 
     ret = setlocale(__category, __locale);
     if (ret) {
-        locale = __MKSTRING(ret);
+	locale = __MKSTRING(ret);
     }
 
 out:;
 %}.
     locale notNil ifTrue:[
-        ^ locale.
+	^ locale.
     ].
     ^ self primitiveFailed:error.
 
@@ -9406,15 +9406,15 @@
      (actually, on a mac, it comes utf8-mac encoded)."
 
     (encodedPathNameOrOutputLine isNil or:[CodesetEncoder isNil]) ifTrue:[
-        ^ encodedPathNameOrOutputLine.
+	^ encodedPathNameOrOutputLine.
     ].
 
     ^ [
-        CodesetEncoder decodeString:encodedPathNameOrOutputLine.
+	CodesetEncoder decodeString:encodedPathNameOrOutputLine.
     ] on:DecodingError do:[:ex|
-        "maybe there are old filenames in ISO-8859-x,
-         just keep them untranslated"
-        encodedPathNameOrOutputLine
+	"maybe there are old filenames in ISO-8859-x,
+	 just keep them untranslated"
+	encodedPathNameOrOutputLine
     ].
 
     "Modified: / 23-01-2013 / 10:02:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -9433,72 +9433,72 @@
 
     sysPath := super defaultSystemPath.
     places :=
-        #(
-            '/usr/local/lib/stx'
-            '/usr/local/lib/smalltalk'
-            '/usr/local/lib/smalltalk-x'
-            '/usr/lib/stx'
-            '/usr/lib/smalltalk'
-            '/usr/lib/smalltalk-x'
-            '/lib/stx'
-            '/lib/smalltalk'
-            '/lib/smalltalk-x'
-            '/opt/stx'
-            '/opt/smalltalk'
-            '/opt/smalltalk-x'
-        ).
+	#(
+	    '/usr/local/lib/stx'
+	    '/usr/local/lib/smalltalk'
+	    '/usr/local/lib/smalltalk-x'
+	    '/usr/lib/stx'
+	    '/usr/lib/smalltalk'
+	    '/usr/lib/smalltalk-x'
+	    '/lib/stx'
+	    '/lib/smalltalk'
+	    '/lib/smalltalk-x'
+	    '/opt/stx'
+	    '/opt/smalltalk'
+	    '/opt/smalltalk-x'
+	).
 
     self isOSXlike ifTrue:[
-        |pathOfSTX|
-
-         places :=
-                {
-                    '/Library/Smalltalk' .
-                    '/Library/Smalltalk-x' .
-                    '~/Library/Smalltalk' .
-                    '~/Library/Smalltalk-x' .
-                } , places.
-
-        pathOfSTX := OperatingSystem pathOfSTXExecutable.
-        pathOfSTX notNil ifTrue:[
-            places :=
-                {
-                    (pathOfSTX asFilename / '../Packages') name .
-                    (pathOfSTX asFilename / '../../Packages') name .
-                } , places.
-        ]
+	|pathOfSTX|
+
+	 places :=
+		{
+		    '/Library/Smalltalk' .
+		    '/Library/Smalltalk-x' .
+		    '~/Library/Smalltalk' .
+		    '~/Library/Smalltalk-x' .
+		} , places.
+
+	pathOfSTX := OperatingSystem pathOfSTXExecutable.
+	pathOfSTX notNil ifTrue:[
+	    places :=
+		{
+		    (pathOfSTX asFilename / '../Packages') name .
+		    (pathOfSTX asFilename / '../../Packages') name .
+		} , places.
+	]
     ].
     places do:[:dirName |
-        |dir vsnDir|
-
-        dir := dirName asFilename.
-        (dir isDirectory) ifTrue:[
-            "/ try to guess a gnu-smalltalk; skip it
-            (dir construct:'initialize.st') exists ifFalse:[
-                vsnDir := dir / vsnDirName.
-                vsnDir exists ifTrue:[
-                    "/ new style: look for a major.minor directory there
-                    sysPath add:vsnDir.
-                ] ifFalse:[
-                    "/ old style: look for a RELEASE file there and check if it matches
-                    releaseFile := dir construct:'RELEASE'.
-                    releaseFile exists ifTrue:[
-                        s := releaseFile readStreamOrNil.
-                        s notNil ifTrue:[
-                            v := Integer readFrom:s onError:-1.
-                            s close.
-                            v == majorVersionNr ifTrue:[
-                                sysPath add:dirName
-                            ] ifFalse:[
-                                ('UnixOperatingSystem [info]: ignore files in ' , dir pathName , ' (RELEASE mismatch)') infoPrintCR.
-                            ]
-                        ] ifFalse:[
-                            ('UnixOperatingSystem [info]: ignore files in ' , dir pathName , ' (RELEASE missing)') infoPrintCR.
-                        ]
-                    ]
-                ]
-            ]
-        ]
+	|dir vsnDir|
+
+	dir := dirName asFilename.
+	(dir isDirectory) ifTrue:[
+	    "/ try to guess a gnu-smalltalk; skip it
+	    (dir construct:'initialize.st') exists ifFalse:[
+		vsnDir := dir / vsnDirName.
+		vsnDir exists ifTrue:[
+		    "/ new style: look for a major.minor directory there
+		    sysPath add:vsnDir.
+		] ifFalse:[
+		    "/ old style: look for a RELEASE file there and check if it matches
+		    releaseFile := dir construct:'RELEASE'.
+		    releaseFile exists ifTrue:[
+			s := releaseFile readStreamOrNil.
+			s notNil ifTrue:[
+			    v := Integer readFrom:s onError:-1.
+			    s close.
+			    v == majorVersionNr ifTrue:[
+				sysPath add:dirName
+			    ] ifFalse:[
+				('UnixOperatingSystem [info]: ignore files in ' , dir pathName , ' (RELEASE mismatch)') infoPrintCR.
+			    ]
+			] ifFalse:[
+			    ('UnixOperatingSystem [info]: ignore files in ' , dir pathName , ' (RELEASE missing)') infoPrintCR.
+			]
+		    ]
+		]
+	    ]
+	]
     ].
     ^ sysPath
 
@@ -9514,15 +9514,15 @@
      (actually, on a mac, it has to be utf8-mac encoded)."
 
     (pathNameOrCommandInput isNil or:[CodesetEncoder isNil]) ifTrue:[
-        ^ pathNameOrCommandInput.
+	^ pathNameOrCommandInput.
     ].
 
     ^ [
-        CodesetEncoder encodeString: pathNameOrCommandInput.
+	CodesetEncoder encodeString: pathNameOrCommandInput.
     ] on:EncodingError do:[:ex|
-        "maybe there are old filenames in ISO-8859-x,
-         just keep them untranslated"
-        pathNameOrCommandInput
+	"maybe there are old filenames in ISO-8859-x,
+	 just keep them untranslated"
+	pathNameOrCommandInput
     ].
 
     "
@@ -9546,15 +9546,15 @@
 
     entries := OrderedCollection new.
     ('/proc/mounts' asFilename) readingLinesDo:[:eachLine |
-        |items mountInfo|
-
-        items := eachLine asCollectionOfWords.
-        mountInfo := (MountInfo new
-            mountPointPath:(items at:2)
-            deviceOrRemotePath:(items at:1)
-            fsType:(items at:3)
-            attributeString:(items at:4)).
-        entries add:mountInfo
+	|items mountInfo|
+
+	items := eachLine asCollectionOfWords.
+	mountInfo := (MountInfo new
+	    mountPointPath:(items at:2)
+	    deviceOrRemotePath:(items at:1)
+	    fsType:(items at:3)
+	    attributeString:(items at:4)).
+	entries add:mountInfo
     ].
     ^ entries
 
@@ -9582,16 +9582,16 @@
 
     if (__isSmallInteger(addr)
      && __bothSmallInteger(flags, id)) {
-        shmaddr = (void *) __intVal(addr);
-        shmflg = __intVal(flags);
-        shmid = __intVal(id);
-
-        address = shmat(shmid, shmaddr, shmflg);
-        if (address != (void *)-1) {
-            RETURN (__MKEXTERNALBYTES(addr));
-        }
-        @global(LastErrorNumber) = __mkSmallInteger(errno);
-        RETURN (nil);
+	shmaddr = (void *) __intVal(addr);
+	shmflg = __intVal(flags);
+	shmid = __intVal(id);
+
+	address = shmat(shmid, shmaddr, shmflg);
+	if (address != (void *)-1) {
+	    RETURN (__MKEXTERNALBYTES(addr));
+	}
+	@global(LastErrorNumber) = __mkSmallInteger(errno);
+	RETURN (nil);
     }
 #endif
 %}.
@@ -9610,14 +9610,14 @@
     int rslt;
 
     if (__isSmallInteger(addr)) {
-        shmaddr = (void *) __intVal(addr);
-
-        rslt = shmdt(shmaddr);
-        if (rslt != -1) {
-            RETURN (true);
-        }
-        @global(LastErrorNumber) = __mkSmallInteger(errno);
-        RETURN (false);
+	shmaddr = (void *) __intVal(addr);
+
+	rslt = shmdt(shmaddr);
+	if (rslt != -1) {
+	    RETURN (true);
+	}
+	@global(LastErrorNumber) = __mkSmallInteger(errno);
+	RETURN (false);
     }
 #endif
 %}.
@@ -9635,14 +9635,14 @@
 #ifdef WANT_SHM
     if (__bothSmallInteger(key, size)
      && __isSmallInteger(flags)) {
-        int rslt;
-
-        rslt = shmget(__intVal(key), __intVal(size), __intVal(flags));
-        if (rslt != -1) {
-            RETURN (__mkSmallInteger(rslt));
-        }
-        @global(LastErrorNumber) = __mkSmallInteger(errno);
-        RETURN (nil);
+	int rslt;
+
+	rslt = shmget(__intVal(key), __intVal(size), __intVal(flags));
+	if (rslt != -1) {
+	    RETURN (__mkSmallInteger(rslt));
+	}
+	@global(LastErrorNumber) = __mkSmallInteger(errno);
+	RETURN (nil);
     }
 #endif
 %}.
@@ -9687,67 +9687,67 @@
     if (__bothSmallInteger(y, m)
      && __bothSmallInteger(d, h)
      && __bothSmallInteger(min, s)) {
-        tm.tm_hour = __intVal(h);
-        tm.tm_min = __intVal(min);
-        tm.tm_sec = __intVal(s);
-
-        tm.tm_year = __intVal(y) - 1900;
-        tm.tm_mon = __intVal(m) - 1;
-        tm.tm_mday = __intVal(d);
-        tm.tm_isdst = -1;
+	tm.tm_hour = __intVal(h);
+	tm.tm_min = __intVal(min);
+	tm.tm_sec = __intVal(s);
+
+	tm.tm_year = __intVal(y) - 1900;
+	tm.tm_mon = __intVal(m) - 1;
+	tm.tm_mday = __intVal(d);
+	tm.tm_isdst = -1;
 
 #if __POINTER_SIZE__ < 8 && !defined(HAS_MKTIME64)
-        if (__intVal(y) > 2038) goto outOfRange;
-        if (__intVal(y) == 2038) {
-            if (__intVal(m) > 1) goto outOfRange;
-            if (__intVal(d) > 19) goto outOfRange;
-            if (__intVal(d) == 19) {
-                if (__intVal(h) > 3) goto outOfRange;
-                if (__intVal(h) == 3) {
-                    if (__intVal(min) > 14) goto outOfRange;
-                    if (__intVal(min) == 14) {
-                        if (__intVal(s) > 7) goto outOfRange;
-                    }
-                }
-            }
-        }
+	if (__intVal(y) > 2038) goto outOfRange;
+	if (__intVal(y) == 2038) {
+	    if (__intVal(m) > 1) goto outOfRange;
+	    if (__intVal(d) > 19) goto outOfRange;
+	    if (__intVal(d) == 19) {
+		if (__intVal(h) > 3) goto outOfRange;
+		if (__intVal(h) == 3) {
+		    if (__intVal(min) > 14) goto outOfRange;
+		    if (__intVal(min) == 14) {
+			if (__intVal(s) > 7) goto outOfRange;
+		    }
+		}
+	    }
+	}
 #endif
 
 #ifdef HAS_TIMEGM
-        if (utcBoolean == true) {               /* convert to utc time */
+	if (utcBoolean == true) {               /* convert to utc time */
 # ifdef HAS_MKTIME64
-            t = timegm64(&tm);                  /* timegm() interprets tm as utc time */
+	    t = timegm64(&tm);                  /* timegm() interprets tm as utc time */
 # else
-            t = timegm(&tm);                    /* timegm() interprets tm as utc time */
-# endif
-        } else
-#endif
-        {
+	    t = timegm(&tm);                    /* timegm() interprets tm as utc time */
+# endif
+	} else
+#endif
+	{
 #ifdef HAS_MKTIME64
-            t = mktime64(&tm);                  /* mktime() interprets tm as localtime */
+	    t = mktime64(&tm);                  /* mktime() interprets tm as localtime */
 #else
-            t = mktime(&tm);                    /* mktime() interprets tm as localtime */
-#endif
-        }
-        if (t != (TIME_T)-1) {
+	    t = mktime(&tm);                    /* mktime() interprets tm as localtime */
+#endif
+	}
+	if (t != (TIME_T)-1) {
 #ifndef HAS_TIMEGM
-            if (utcBoolean == true) {           /* convert to utc time */
-                // printf("tz=%d\n", TIMEZONE(&tm));
-                t = t - TIMEZONE(&tm);          /* TIMZONE = seconds westward from 0 */
-            }
+	    if (utcBoolean == true) {           /* convert to utc time */
+		// printf("tz=%d\n", TIMEZONE(&tm));
+		t = t - TIMEZONE(&tm);          /* TIMZONE = seconds westward from 0 */
+	    }
 #endif
 #ifdef HAS_MKTIME64
-            osSeconds = __MKLARGEINT64(1, (t & 0xFFFFFFFF), (t>>32)& 0xFFFFFFFF);
+	    osSeconds = __MKLARGEINT64(1, (t & 0xFFFFFFFF), (t>>32)& 0xFFFFFFFF);
 #else
-            /* be careful, t can be negative at the start of the epoch ! */
-            osSeconds = __MKINT((INT)t);
-#endif
-        }
+	    /* be careful, t can be negative at the start of the epoch ! */
+	    osSeconds = __MKINT((INT)t);
+#endif
+	}
     }
   outOfRange: ;
 %}.
     osSeconds notNil ifTrue:[
-        ^ osSeconds * 1000 + millis
+	^ osSeconds * 1000 + millis
     ].
     ^ TimeConversionError raiseRequest.
 
@@ -9780,7 +9780,7 @@
 
      If supported by the system, it uses a clock that cannot be set and represents
      monotonic time since some unspecified starting point.  This clock is not affected by
-     discontinuous  jumps  in  the system time 
+     discontinuous  jumps  in  the system time
      (e.g., if the system administrator manually changes the clock), but is affected by
      the incremental adjustments performed by adjtime(3) and NTP."
 
@@ -9789,9 +9789,9 @@
 %{
 #ifdef __SCHTEAM__
     {
-        long nanos = java.lang.System.nanoTime();
-
-        return context._RETURN( STInteger._new(nanos / 1000) );
+	long nanos = java.lang.System.nanoTime();
+
+	return context._RETURN( STInteger._new(nanos / 1000) );
     }
     /* NOTREACHED */
 #else
@@ -9802,17 +9802,17 @@
     static int has_clock_gettime = 1;
 
     if (has_clock_gettime) {
-        if (clock_gettime(CLOCK_MONOTONIC, &ts) != -1) {
-            _secs = ts.tv_sec;
-            _micros  = ts.tv_nsec / 1000;
-            goto out;
-        } else {
-            /*
-             * clock_gettime is not implemented in the kernel
-             * fall through to alternative implementation
-             */
-            has_clock_gettime = 0;
-        }
+	if (clock_gettime(CLOCK_MONOTONIC, &ts) != -1) {
+	    _secs = ts.tv_sec;
+	    _micros  = ts.tv_nsec / 1000;
+	    goto out;
+	} else {
+	    /*
+	     * clock_gettime is not implemented in the kernel
+	     * fall through to alternative implementation
+	     */
+	    has_clock_gettime = 0;
+	}
     }
 # endif
 
@@ -9821,8 +9821,8 @@
 
     gettimeofday(&tb, NULL /* &tzb */);
     if (tb.tv_usec >= (1000000)) {
-        error = @symbol(bad);
-        goto err;
+	error = @symbol(bad);
+	goto err;
     }
 
     _secs = tb.tv_sec;
@@ -9833,18 +9833,18 @@
 
 # if __POINTER_SIZE__ == 8
     {
-        unsigned INT rslt;
-
-        rslt = (unsigned INT)_secs * 1000000 + _micros;
-        RETURN (__MKUINT(rslt));
+	unsigned INT rslt;
+
+	rslt = (unsigned INT)_secs * 1000000 + _micros;
+	RETURN (__MKUINT(rslt));
     }
 # else
 #  ifdef HAS_LONGLONG
     {
-        unsigned long long rslt;
-
-        rslt = (unsigned long long)_secs * 1000000 + _micros;
-        RETURN (__MKLARGEINT64(1, (unsigned INT)(rslt & 0xFFFFFFFF), (unsigned INT)(rslt >> 32)));
+	unsigned long long rslt;
+
+	rslt = (unsigned long long)_secs * 1000000 + _micros;
+	RETURN (__MKLARGEINT64(1, (unsigned INT)(rslt & 0xFFFFFFFF), (unsigned INT)(rslt >> 32)));
     }
 #  else
     seconds = __MKUINT(_secs);
@@ -9856,10 +9856,10 @@
 %}.
 
     seconds notNil ifTrue:[
-        ^ (seconds * 1000000) + micros
+	^ (seconds * 1000000) + micros
     ].
     error isNil ifTrue:[
-        ^ self getMillisecondTime * 1000
+	^ self getMillisecondTime * 1000
     ].
     self primitiveFailed:error.
 
@@ -9880,8 +9880,8 @@
      Use the XXXmillisecondTime:-methods to compare and add time deltas - these know about the wrap.
 
      BAD DESIGN:
-        This should be changed to return some instance of RelativeTime,
-        and these computations moved there.
+	This should be changed to return some instance of RelativeTime,
+	and these computations moved there.
 
      Don't use this method in application code since it is an internal (private)
      interface. For compatibility with ST-80, use Time millisecondClockValue.
@@ -9890,8 +9890,8 @@
 %{  /* NOCONTEXT */
 #ifdef __SCHTEAM__
     {
-        long millis = java.lang.System.currentTimeMillis();
-        return context._RETURN( STInteger._new(millis) );
+	long millis = java.lang.System.currentTimeMillis();
+	return context._RETURN( STInteger._new(millis) );
     }
     /* NOTREACHED */
 #else
@@ -9902,16 +9902,16 @@
     struct timespec ts;
 
     if (has_clock_gettime) {
-        if (clock_gettime(CLOCK_MONOTONIC, &ts) != -1) {
-            t = ts.tv_sec*1000 + ts.tv_nsec/1000000;
-            goto out;
-        } else {
-            /*
-             * clock_gettime is not implemented in the kernel
-             * fall through to alternative implementation
-             */
-            has_clock_gettime = 0;
-        }
+	if (clock_gettime(CLOCK_MONOTONIC, &ts) != -1) {
+	    t = ts.tv_sec*1000 + ts.tv_nsec/1000000;
+	    goto out;
+	} else {
+	    /*
+	     * clock_gettime is not implemented in the kernel
+	     * fall through to alternative implementation
+	     */
+	    has_clock_gettime = 0;
+	}
     }
 # endif /*  _POSIX_MONOTONIC_CLOCK */
 
@@ -9927,12 +9927,12 @@
     struct tms tb;
 
     if (!millisecondsPerTick) {
-        int ticksPerSecond = sysconf(_SC_CLK_TCK);
-        if (ticksPerSecond <= 0)
-            goto err;
-        if (ticksPerSecond > 1000)
-            goto err;
-        millisecondsPerTick = 1000 / ticksPerSecond;
+	int ticksPerSecond = sysconf(_SC_CLK_TCK);
+	if (ticksPerSecond <= 0)
+	    goto err;
+	if (ticksPerSecond > 1000)
+	    goto err;
+	millisecondsPerTick = 1000 / ticksPerSecond;
 /*
 printf("milliSecondsPerTick: %d\n", millisecondsPerTick);
 */
@@ -9940,7 +9940,7 @@
 
     ticks = times(&tb);
     if (ticks == -1)
-        goto err;
+	goto err;
 
     t = ticks * millisecondsPerTick;
 
@@ -9981,7 +9981,7 @@
 
      If supported by the system, it uses a clock that cannot be set and represents
      monotonic time since some unspecified starting point.  This clock is not affected by
-     discontinuous  jumps  in  the system time 
+     discontinuous  jumps  in  the system time
      (e.g., if the system administrator manually changes the clock), but is affected by
      the incremental adjustments performed by adjtime(3) and NTP."
 
@@ -9990,9 +9990,9 @@
 %{
 #ifdef __SCHTEAM__
     {
-        long nanos = java.lang.System.nanoTime();
-
-        return context._RETURN( STInteger._new(nanos) );
+	long nanos = java.lang.System.nanoTime();
+
+	return context._RETURN( STInteger._new(nanos) );
     }
     /* NOTREACHED */
 #else
@@ -10003,32 +10003,32 @@
     static int has_clock_gettime = 1;
 
     if (has_clock_gettime) {
-        if (clock_gettime(CLOCK_MONOTONIC, &ts) != -1) {
-            _secs = ts.tv_sec;
-            _nanos  = ts.tv_nsec;
-        } else {
-            /*
-             * clock_gettime is not implemented in the kernel
-             * fall through to alternative implementation
-             */
-            has_clock_gettime = 0;
-            goto notSupported;
-        }
+	if (clock_gettime(CLOCK_MONOTONIC, &ts) != -1) {
+	    _secs = ts.tv_sec;
+	    _nanos  = ts.tv_nsec;
+	} else {
+	    /*
+	     * clock_gettime is not implemented in the kernel
+	     * fall through to alternative implementation
+	     */
+	    has_clock_gettime = 0;
+	    goto notSupported;
+	}
     }
 # if __POINTER_SIZE__ == 8
     {
-        unsigned INT rslt;
-
-        rslt = (unsigned INT)_secs * 1000000000 + _nanos;
-        RETURN (__MKUINT(rslt));
+	unsigned INT rslt;
+
+	rslt = (unsigned INT)_secs * 1000000000 + _nanos;
+	RETURN (__MKUINT(rslt));
     }
 # else
 #  ifdef HAS_LONGLONG
     {
-        unsigned long long rslt;
-
-        rslt = (unsigned long long)_secs * 1000000000 + _nanos;
-        RETURN (__MKLARGEINT64(1, (unsigned INT)(rslt & 0xFFFFFFFF), (unsigned INT)(rslt >> 32)));
+	unsigned long long rslt;
+
+	rslt = (unsigned long long)_secs * 1000000000 + _nanos;
+	RETURN (__MKLARGEINT64(1, (unsigned INT)(rslt & 0xFFFFFFFF), (unsigned INT)(rslt >> 32)));
     }
 #  else
     seconds = __MKUINT(_secs);
@@ -10042,7 +10042,7 @@
 %}.
 
     seconds notNil ifTrue:[
-        ^ (seconds * 1000000000) + nanos
+	^ (seconds * 1000000000) + nanos
     ].
 
     "fallback, if monotonic time is not supported"
@@ -10073,8 +10073,8 @@
 %{
 #ifdef __SCHTEAM__
     {
-        long millisSince1970 = java.lang.System.currentTimeMillis();
-        return context._RETURN( STInteger._new(millisSince1970));
+	long millisSince1970 = java.lang.System.currentTimeMillis();
+	return context._RETURN( STInteger._new(millisSince1970));
     }
     /* NOTREACHED */
 #else
@@ -10083,11 +10083,11 @@
 # if !defined(HAS_GETTIMEOFDAY)
 #  if defined(HAS_FTIME)
     {
-        struct timeb timebuffer;
-
-        ftime(&timebuffer);
-        _secs = timebuffer.time;
-        _millis = timebuffer.millitm;
+	struct timeb timebuffer;
+
+	ftime(&timebuffer);
+	_secs = timebuffer.time;
+	_millis = timebuffer.millitm;
     }
 #    define HAVE_TIME
 #  endif /* HAS_FTIME */
@@ -10100,33 +10100,33 @@
      */
 
     {
-        /*
-         * bsd time
-         */
-        struct timeval tb;
-        /* struct timezone tzb; */
-
-        gettimeofday(&tb, NULL /* &tzb */);
-
-        _secs = tb.tv_sec;
-        _millis = tb.tv_usec / 1000;
+	/*
+	 * bsd time
+	 */
+	struct timeval tb;
+	/* struct timezone tzb; */
+
+	gettimeofday(&tb, NULL /* &tzb */);
+
+	_secs = tb.tv_sec;
+	_millis = tb.tv_usec / 1000;
     }
 # endif
 
 # if __POINTER_SIZE__ == 8
     {
-        unsigned INT rslt;
-
-        rslt = (unsigned INT)_secs * 1000 + _millis;
-        RETURN (__MKUINT(rslt));
+	unsigned INT rslt;
+
+	rslt = (unsigned INT)_secs * 1000 + _millis;
+	RETURN (__MKUINT(rslt));
     }
 # else
 #  ifdef HAS_LONGLONG
     {
-        unsigned long long rslt;
-
-        rslt = (unsigned long long)_secs * 1000 + _millis;
-        RETURN (__MKLARGEINT64(1, (unsigned INT)(rslt & 0xFFFFFFFF), (unsigned INT)(rslt >> 32)));
+	unsigned long long rslt;
+
+	rslt = (unsigned long long)_secs * 1000 + _millis;
+	RETURN (__MKLARGEINT64(1, (unsigned INT)(rslt & 0xFFFFFFFF), (unsigned INT)(rslt >> 32)));
     }
 #  else
     seconds = __MKUINT(_secs);
@@ -10136,7 +10136,7 @@
 #endif /* SCHTEAM */
 %}.
     seconds notNil ifTrue:[
-        ^ (seconds * 1000) + millis
+	^ (seconds * 1000) + millis
     ].
 
     self primitiveFailed.
@@ -10163,9 +10163,9 @@
 %{
 #ifdef __SCHTEAM__
     {
-        long nanos = java.lang.System.nanoTime();
-
-        return context._RETURN( STInteger._new(nanos) );
+	long nanos = java.lang.System.nanoTime();
+
+	return context._RETURN( STInteger._new(nanos) );
     }
     /* NOTREACHED */
 #else
@@ -10176,17 +10176,17 @@
     static int has_clock_gettime = 1;
 
     if (has_clock_gettime) {
-        if (clock_gettime(CLOCK_REALTIME, &ts) != -1) {
-            _secs = ts.tv_sec;
-            _nanos  = ts.tv_nsec;
-            goto out;
-        } else {
-            /*
-             * clock_gettime is not implemented in the kernel
-             * fall through to alternative implementation
-             */
-            has_clock_gettime = 0;
-        }
+	if (clock_gettime(CLOCK_REALTIME, &ts) != -1) {
+	    _secs = ts.tv_sec;
+	    _nanos  = ts.tv_nsec;
+	    goto out;
+	} else {
+	    /*
+	     * clock_gettime is not implemented in the kernel
+	     * fall through to alternative implementation
+	     */
+	    has_clock_gettime = 0;
+	}
     }
 # endif
 
@@ -10195,8 +10195,8 @@
 
     gettimeofday(&tb, NULL /* &tzb */);
     if (tb.tv_usec >= 1000000) {
-        error = @symbol(bad);
-        goto err;
+	error = @symbol(bad);
+	goto err;
     }
 
     _secs = tb.tv_sec;
@@ -10207,18 +10207,18 @@
 
 # if __POINTER_SIZE__ == 8
     {
-        unsigned INT rslt;
-
-        rslt = (unsigned INT)_secs * 1000000000 + _nanos;
-        RETURN (__MKUINT(rslt));
+	unsigned INT rslt;
+
+	rslt = (unsigned INT)_secs * 1000000000 + _nanos;
+	RETURN (__MKUINT(rslt));
     }
 # else
 #  ifdef HAS_LONGLONG
     {
-        unsigned long long rslt;
-
-        rslt = (unsigned long long)_secs * 1000000000 + _nanos;
-        RETURN (__MKLARGEINT64(1, (unsigned INT)(rslt & 0xFFFFFFFF), (unsigned INT)(rslt >> 32)));
+	unsigned long long rslt;
+
+	rslt = (unsigned long long)_secs * 1000000000 + _nanos;
+	RETURN (__MKLARGEINT64(1, (unsigned INT)(rslt & 0xFFFFFFFF), (unsigned INT)(rslt >> 32)));
     }
 #  else
     seconds = __MKUINT(_secs);
@@ -10230,10 +10230,10 @@
 %}.
 
     seconds notNil ifTrue:[
-        ^ (seconds * 1000000000) + nanos
+	^ (seconds * 1000000000) + nanos
     ].
     error isNil ifTrue:[
-        ^ self getMillisecondTime * 1000000
+	^ self getMillisecondTime * 1000000
     ].
     self primitiveFailed:error.
 
@@ -10265,7 +10265,7 @@
     secs = __intVal(uLow);
     usecs = __intVal(uHigh);
     if (secs > 0) {
-        sleep(secs);
+	sleep(secs);
     }
     usleep(usecs);
     RETURN (true);
@@ -10309,8 +10309,8 @@
 %{  /* NOCONTEXT */
 
     if (__isSmallInteger(numberOfSeconds)) {
-        sleep(__intVal(numberOfSeconds));
-        RETURN ( self );
+	sleep(__intVal(numberOfSeconds));
+	RETURN ( self );
     }
 %}.
     "
@@ -10335,104 +10335,104 @@
 #ifdef __SCHTEAM__
     if (osSeconds.isSmallInteger()
      && osMilliseconds.isSmallInteger()) {
-        long _seconds = osSeconds.longValue();
-        long _millis = osMilliseconds.longValue();
-        long _millisSinceEpoch = _seconds * 1000 + _millis;
-        java.util.TimeZone _tz;
-        java.util.Calendar _calendar;
-        int _wDay;
-
-        if (isLocalTime == STObject.True) {
-            _tz = java.util.TimeZone.getDefault();
-        } else {
-            _tz = java.util.TimeZone.getTimeZone("UTC");
-        }
-        _calendar = java.util.Calendar.getInstance(_tz);
-        _calendar.setTimeInMillis(_millisSinceEpoch);
-
-        year = STInteger._new( _calendar.get(java.util.Calendar.YEAR) );
-        month = STInteger._new( _calendar.get(java.util.Calendar.MONTH) + 1 );
-        day = STInteger._new( _calendar.get(java.util.Calendar.DAY_OF_MONTH) );
-        hours = STInteger._new( _calendar.get(java.util.Calendar.HOUR_OF_DAY) );
-        minutes = STInteger._new( _calendar.get(java.util.Calendar.MINUTE) );
-        seconds = STInteger._new( _calendar.get(java.util.Calendar.SECOND) );
-        yDay = STInteger._new( _calendar.get(java.util.Calendar.DAY_OF_YEAR) );
-        _wDay = _calendar.get(java.util.Calendar.DAY_OF_WEEK);
-        // convert from 1=SUN, 2=MON,...
-        // to 1=MON, 2=TUE,...
-        _wDay = _wDay - 1; if (_wDay < 1) _wDay += 7;
-        wDay = STInteger._new( _wDay );
-        utcOffset = STInteger._new( (_calendar.get(java.util.Calendar.ZONE_OFFSET)) / 1000 );
-        dstOffset = STInteger._new( (_calendar.get(java.util.Calendar.DST_OFFSET)) / 1000 );
+	long _seconds = osSeconds.longValue();
+	long _millis = osMilliseconds.longValue();
+	long _millisSinceEpoch = _seconds * 1000 + _millis;
+	java.util.TimeZone _tz;
+	java.util.Calendar _calendar;
+	int _wDay;
+
+	if (isLocalTime == STObject.True) {
+	    _tz = java.util.TimeZone.getDefault();
+	} else {
+	    _tz = java.util.TimeZone.getTimeZone("UTC");
+	}
+	_calendar = java.util.Calendar.getInstance(_tz);
+	_calendar.setTimeInMillis(_millisSinceEpoch);
+
+	year = STInteger._new( _calendar.get(java.util.Calendar.YEAR) );
+	month = STInteger._new( _calendar.get(java.util.Calendar.MONTH) + 1 );
+	day = STInteger._new( _calendar.get(java.util.Calendar.DAY_OF_MONTH) );
+	hours = STInteger._new( _calendar.get(java.util.Calendar.HOUR_OF_DAY) );
+	minutes = STInteger._new( _calendar.get(java.util.Calendar.MINUTE) );
+	seconds = STInteger._new( _calendar.get(java.util.Calendar.SECOND) );
+	yDay = STInteger._new( _calendar.get(java.util.Calendar.DAY_OF_YEAR) );
+	_wDay = _calendar.get(java.util.Calendar.DAY_OF_WEEK);
+	// convert from 1=SUN, 2=MON,...
+	// to 1=MON, 2=TUE,...
+	_wDay = _wDay - 1; if (_wDay < 1) _wDay += 7;
+	wDay = STInteger._new( _wDay );
+	utcOffset = STInteger._new( (_calendar.get(java.util.Calendar.ZONE_OFFSET)) / 1000 );
+	dstOffset = STInteger._new( (_calendar.get(java.util.Calendar.DST_OFFSET)) / 1000 );
     }
 #else
     struct tm tmValue, *result;
     time_t tt = __signedLongIntVal(osSeconds);
 
     if (tt == 0 && !__isSmallInteger(osSeconds))
-        goto out;             // __singedLongIntVal() returns 0 on failure
+	goto out;             // __singedLongIntVal() returns 0 on failure
 
     /* try cache */
     {
-        OBJ lastSeconds = @global(LastTimeInfoSeconds);
-
-        if (__isInteger(lastSeconds)
-             && (__signedLongIntVal(lastSeconds) == tt)
-             && (@global(LastTimeInfoIsLocal) == isLocalTime)
-        ) {
-            OBJ lastTimeInfo = @global(LastTimeInfo);
-            if (lastTimeInfo != nil) {
-                info = lastTimeInfo;
-                goto out;
-            }
-        }
+	OBJ lastSeconds = @global(LastTimeInfoSeconds);
+
+	if (__isInteger(lastSeconds)
+	     && (__signedLongIntVal(lastSeconds) == tt)
+	     && (@global(LastTimeInfoIsLocal) == isLocalTime)
+	) {
+	    OBJ lastTimeInfo = @global(LastTimeInfo);
+	    if (lastTimeInfo != nil) {
+		info = lastTimeInfo;
+		goto out;
+	    }
+	}
     }
 
     result = (isLocalTime == true) ? localtime_r(&tt, &tmValue) :  gmtime_r(&tt, &tmValue);
     if (result != NULL) {
-        hours = __mkSmallInteger(tmValue.tm_hour);
-        minutes = __mkSmallInteger(tmValue.tm_min);
-        seconds = __mkSmallInteger(tmValue.tm_sec);
-
-        year = __mkSmallInteger(tmValue.tm_year + 1900);
-        month = __mkSmallInteger(tmValue.tm_mon + 1);
-        day = __mkSmallInteger(tmValue.tm_mday);
-
-        yDay = __mkSmallInteger(tmValue.tm_yday+1);
-        wDay = __mkSmallInteger(tmValue.tm_wday == 0 ? 7 : tmValue.tm_wday);
-        utcOffset = __mkSmallInteger(TIMEZONE(&tmValue));
-        dst = (tmValue.tm_isdst == 0 ? false : true);
+	hours = __mkSmallInteger(tmValue.tm_hour);
+	minutes = __mkSmallInteger(tmValue.tm_min);
+	seconds = __mkSmallInteger(tmValue.tm_sec);
+
+	year = __mkSmallInteger(tmValue.tm_year + 1900);
+	month = __mkSmallInteger(tmValue.tm_mon + 1);
+	day = __mkSmallInteger(tmValue.tm_mday);
+
+	yDay = __mkSmallInteger(tmValue.tm_yday+1);
+	wDay = __mkSmallInteger(tmValue.tm_wday == 0 ? 7 : tmValue.tm_wday);
+	utcOffset = __mkSmallInteger(TIMEZONE(&tmValue));
+	dst = (tmValue.tm_isdst == 0 ? false : true);
     }
 out:;
 #endif
 %}.
     info notNil ifTrue:[
-        "there is a matching cached value"
-        LastTimeInfoMilliseconds == osMilliseconds ifTrue:[
-            ^ info.
-        ].
-        info := info copy.
-        info milliseconds:osMilliseconds.
+	"there is a matching cached value"
+	LastTimeInfoMilliseconds == osMilliseconds ifTrue:[
+	    ^ info.
+	].
+	info := info copy.
+	info milliseconds:osMilliseconds.
     ] ifFalse:[
-        year isNil ifTrue:[
-            TimeConversionError raiseErrorString:' - out of range'.
-        ].
-        dst isNil ifTrue:[
-            dst := (dstOffset ~= 0)
-        ].
-        info := self timeInfoClass new.
-        info
-            year:year
-            month:month
-            day:day
-            hours:hours
-            minutes:minutes
-            seconds:seconds
-            milliseconds:osMilliseconds
-            utcOffset:utcOffset
-            dst:dst
-            dayInYear:yDay
-            dayInWeek:wDay.
+	year isNil ifTrue:[
+	    TimeConversionError raiseErrorString:' - out of range'.
+	].
+	dst isNil ifTrue:[
+	    dst := (dstOffset ~= 0)
+	].
+	info := self timeInfoClass new.
+	info
+	    year:year
+	    month:month
+	    day:day
+	    hours:hours
+	    minutes:minutes
+	    seconds:seconds
+	    milliseconds:osMilliseconds
+	    utcOffset:utcOffset
+	    dst:dst
+	    dayInYear:yDay
+	    dayInWeek:wDay.
     ].
 
 %{
@@ -10529,11 +10529,11 @@
     info := self userInfoOf:userID.
     (info notNil
     and:[info includesKey:#gecos]) ifTrue:[
-        gecos := info at:#gecos.
-        (gecos includes:$,) ifTrue:[
-            ^ gecos copyTo:(gecos indexOf:$,) - 1
-        ].
-        ^ gecos
+	gecos := info at:#gecos.
+	(gecos includes:$,) ifTrue:[
+	    ^ gecos copyTo:(gecos indexOf:$,) - 1
+	].
+	^ gecos
     ].
     ^ self getUserNameFromID:userID
 
@@ -10572,10 +10572,10 @@
     struct group *g;
 
     if (__isSmallInteger(aNumber)) {
-        g = getgrgid(__intVal(aNumber));
-        if (g) {
-            RETURN ( __MKSTRING(g->gr_name) );
-        }
+	g = getgrgid(__intVal(aNumber));
+	if (g) {
+	    RETURN ( __MKSTRING(g->gr_name) );
+	}
     }
 %}.
     ^ '???'
@@ -10595,10 +10595,10 @@
 
     homeDir := self getEnvironment:'HOME'.
     homeDir isNil ifTrue:[
-        "/ mhmh - can only happen if started via some uncorrectly
-        "/ initialized subprocess...
-        'UnixOperatingSystem [warning]: cannot figure out home directory' errorPrintCR.
-        homeDir := '/tmp'.
+	"/ mhmh - can only happen if started via some uncorrectly
+	"/ initialized subprocess...
+	'UnixOperatingSystem [warning]: cannot figure out home directory' errorPrintCR.
+	homeDir := '/tmp'.
     ].
     ^ self decodePath:homeDir
 
@@ -10623,32 +10623,32 @@
     char *name = (char *)0;
 
     if (firstCall) {
-        /*
-         * try a few common environment variables ...
-         */
-        name = getenv("LOGNAME");
-        if (! name || (name[0] == 0)) {
-            name = getlogin();
-            if (! name || (name[0] == 0) ) {
-                name = getenv("LOGIN");
-                if (! name || (name[0] == 0) ) {
-                    name = getenv("USER");
-                }
-            }
-        }
-        if (name && (strlen(name) < sizeof(cachedName))) {
-            strcpy(cachedName, name);
-            firstCall = 0;
-        }
+	/*
+	 * try a few common environment variables ...
+	 */
+	name = getenv("LOGNAME");
+	if (! name || (name[0] == 0)) {
+	    name = getlogin();
+	    if (! name || (name[0] == 0) ) {
+		name = getenv("LOGIN");
+		if (! name || (name[0] == 0) ) {
+		    name = getenv("USER");
+		}
+	    }
+	}
+	if (name && (strlen(name) < sizeof(cachedName))) {
+	    strcpy(cachedName, name);
+	    firstCall = 0;
+	}
     } else {
-        name = cachedName;
+	name = cachedName;
     }
 
     /*
      * nope - I really don't know who you are.
      */
     if (! name || (name[0] == 0) ) {
-        name = "you";
+	name = "you";
     }
 
     RETURN ( __MKSTRING(name) );
@@ -10685,10 +10685,10 @@
     struct passwd *p;
 
     if (__isSmallInteger(aNumber)) {
-        p = getpwuid(__intVal(aNumber));
-        if (p && p->pw_name && (strlen(p->pw_name) > 0)) {
-            RETURN ( __MKSTRING(p->pw_name) );
-        }
+	p = getpwuid(__intVal(aNumber));
+	if (p && p->pw_name && (strlen(p->pw_name) > 0)) {
+	    RETURN ( __MKSTRING(p->pw_name) );
+	}
     }
 #endif /* unix-like */
 %}.
@@ -10746,68 +10746,68 @@
     struct passwd pwd;
 
     if (__isStringLike(aNameOrID)) {
-        getpwnam_r(__stringVal(aNameOrID), &pwd, buf, sizeof(buf), &result);
+	getpwnam_r(__stringVal(aNameOrID), &pwd, buf, sizeof(buf), &result);
     } else if (__isSmallInteger(aNameOrID)) {
-        getpwuid_r(__intVal(aNameOrID), &pwd, buf, sizeof(buf), &result);
+	getpwuid_r(__intVal(aNameOrID), &pwd, buf, sizeof(buf), &result);
     }
 #else
     if (__isStringLike(aNameOrID)) {
-        result = getpwnam(__stringVal(aNameOrID));
+	result = getpwnam(__stringVal(aNameOrID));
     } else if (__isSmallInteger(aNameOrID)) {
-        result = getpwuid(__intVal(aNameOrID));
+	result = getpwuid(__intVal(aNameOrID));
     }
 #endif /* ! _POSIX_SOURCE */
 
     if (result) {
-        returnArray = __ARRAY_NEW_INT(20);
-        __PROTECT__(returnArray);
-        tmp = __MKSTRING(result->pw_name);
-        __UNPROTECT__(returnArray);
-        __arrayVal(returnArray)[idx++] = @symbol(name);
-        __arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
+	returnArray = __ARRAY_NEW_INT(20);
+	__PROTECT__(returnArray);
+	tmp = __MKSTRING(result->pw_name);
+	__UNPROTECT__(returnArray);
+	__arrayVal(returnArray)[idx++] = @symbol(name);
+	__arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
 #  ifndef NO_PWD_PASSWD
-        __PROTECT__(returnArray);
-        tmp = __MKSTRING(result->pw_passwd);
-        __UNPROTECT__(returnArray);
-        __arrayVal(returnArray)[idx++] = @symbol(passwd);
-        __arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
+	__PROTECT__(returnArray);
+	tmp = __MKSTRING(result->pw_passwd);
+	__UNPROTECT__(returnArray);
+	__arrayVal(returnArray)[idx++] = @symbol(passwd);
+	__arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
 #  endif
 #  ifdef SYSV4
-        __PROTECT__(returnArray);
-        tmp = __MKSTRING(result->pw_age);
-        __UNPROTECT__(returnArray);
-        __arrayVal(returnArray)[idx++] = @symbol(age);
-        __arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
-        __PROTECT__(returnArray);
-        tmp = __MKSTRING(result->pw_comment);
-        __UNPROTECT__(returnArray);
-        __arrayVal(returnArray)[idx++] = @symbol(comment);
-        __arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
-#  endif
-        __PROTECT__(returnArray);
-        tmp = __MKSTRING(result->pw_dir);
-        __UNPROTECT__(returnArray);
-        __arrayVal(returnArray)[idx++] = @symbol(dir);
-        __arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
+	__PROTECT__(returnArray);
+	tmp = __MKSTRING(result->pw_age);
+	__UNPROTECT__(returnArray);
+	__arrayVal(returnArray)[idx++] = @symbol(age);
+	__arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
+	__PROTECT__(returnArray);
+	tmp = __MKSTRING(result->pw_comment);
+	__UNPROTECT__(returnArray);
+	__arrayVal(returnArray)[idx++] = @symbol(comment);
+	__arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
+#  endif
+	__PROTECT__(returnArray);
+	tmp = __MKSTRING(result->pw_dir);
+	__UNPROTECT__(returnArray);
+	__arrayVal(returnArray)[idx++] = @symbol(dir);
+	__arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
 #  ifndef NO_PWD_GECOS
-        __PROTECT__(returnArray);
-        tmp = __MKSTRING(result->pw_gecos);
-        __UNPROTECT__(returnArray);
-        __arrayVal(returnArray)[idx++] = @symbol(gecos);
-        __arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
-#  endif
-        __PROTECT__(returnArray);
-        tmp = __MKSTRING(result->pw_shell);
-         __UNPROTECT__(returnArray);
-        __arrayVal(returnArray)[idx++] = @symbol(shell);
-        __arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
-
-        __arrayVal(returnArray)[idx++] = @symbol(uid);
-        __arrayVal(returnArray)[idx++] = __mkSmallInteger(result->pw_uid);
-
-        __arrayVal(returnArray)[idx++] = @symbol(gid);
-        __arrayVal(returnArray)[idx++] = __mkSmallInteger(result->pw_gid);
-        RETURN(returnArray);
+	__PROTECT__(returnArray);
+	tmp = __MKSTRING(result->pw_gecos);
+	__UNPROTECT__(returnArray);
+	__arrayVal(returnArray)[idx++] = @symbol(gecos);
+	__arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
+#  endif
+	__PROTECT__(returnArray);
+	tmp = __MKSTRING(result->pw_shell);
+	 __UNPROTECT__(returnArray);
+	__arrayVal(returnArray)[idx++] = @symbol(shell);
+	__arrayVal(returnArray)[idx++] = tmp; __STORE(returnArray, tmp);
+
+	__arrayVal(returnArray)[idx++] = @symbol(uid);
+	__arrayVal(returnArray)[idx++] = __mkSmallInteger(result->pw_uid);
+
+	__arrayVal(returnArray)[idx++] = @symbol(gid);
+	__arrayVal(returnArray)[idx++] = __mkSmallInteger(result->pw_gid);
+	RETURN(returnArray);
     }
 # endif /* ! NO_PWD */
 %}.
@@ -10842,22 +10842,22 @@
     info := IdentityDictionary new.
 
     infoArray notNil ifTrue:[
-        infoArray pairWiseDo:[:key :value|
-            key notNil ifTrue:[
-                info at:key put:value.
-                key == #name ifTrue:[name := value].
-                key == #dir  ifTrue:[dir := value].
-            ].
-        ].
+	infoArray pairWiseDo:[:key :value|
+	    key notNil ifTrue:[
+		info at:key put:value.
+		key == #name ifTrue:[name := value].
+		key == #dir  ifTrue:[dir := value].
+	    ].
+	].
     ].
 
     name isNil ifTrue:[
-        info at:#name put:#unknown
+	info at:#name put:#unknown
     ].
     dir isNil ifTrue:[
-        aNameOrID == self getUserID ifTrue:[
-            info at:#dir put:self getHomeDirectory
-        ]
+	aNameOrID == self getUserID ifTrue:[
+	    info at:#dir put:self getHomeDirectory
+	]
     ].
 
     ^ info
@@ -10909,11 +10909,11 @@
 #   define __BLOCKING_WAIT__ 1
 
     if (blocking != true) {
-        /*
-         * We do not support nonBlocking waits, so signal an error
-         * Sorry about the goto, but with all these ifdefs ...
-         */
-        goto done;
+	/*
+	 * We do not support nonBlocking waits, so signal an error
+	 * Sorry about the goto, but with all these ifdefs ...
+	 */
+	goto done;
     }
 # endif /* !HAS_WAIT3 */
 #endif  /* !HAS_WAITPID */
@@ -10944,7 +10944,7 @@
 #endif
 
     do {
-        p = __WAIT;
+	p = __WAIT;
     } while (p == -1 && errno == EINTR);
 
 #if __BLOCKING_WAIT__
@@ -10955,35 +10955,35 @@
 #undef __WAIT
 
     if (p == 0)
-        RETURN(nil)
+	RETURN(nil)
 
     if (p == -1) {
-        if (errno == ECHILD)
-            RETURN(nil);
+	if (errno == ECHILD)
+	    RETURN(nil);
     } else {
-        pid = __mkSmallInteger(p);
-        if (WIFEXITED(s)) {
-            status = @symbol(exit);
-            code = __mkSmallInteger(WEXITSTATUS(s));
-            core = WCOREDUMP(s) ? true : false;
-        } else if (WIFSIGNALED(s)) {
-            status = @symbol(signal);
-            code = __mkSmallInteger(WTERMSIG(s));
-        } else if (WIFSTOPPED(s)) {
-            status = @symbol(stop);
-            code = __mkSmallInteger(WSTOPSIG(s));
-        }
+	pid = __mkSmallInteger(p);
+	if (WIFEXITED(s)) {
+	    status = @symbol(exit);
+	    code = __mkSmallInteger(WEXITSTATUS(s));
+	    core = WCOREDUMP(s) ? true : false;
+	} else if (WIFSIGNALED(s)) {
+	    status = @symbol(signal);
+	    code = __mkSmallInteger(WTERMSIG(s));
+	} else if (WIFSTOPPED(s)) {
+	    status = @symbol(stop);
+	    code = __mkSmallInteger(WSTOPSIG(s));
+	}
 #if defined(WIFCONTINUED)
-        else if (WIFCONTINUED(s)) {
-            status = @symbol(continue);
-        }
+	else if (WIFCONTINUED(s)) {
+	    status = @symbol(continue);
+	}
 #endif
     }
 done: ;
 %}.
 
     (status isNil or:[pid isNil]) ifTrue:[
-        ^ self primitiveFailed
+	^ self primitiveFailed
     ].
 
 "/ Transcript show:'pid: '; show:pid; show:' status: '; show:status;
@@ -11022,10 +11022,10 @@
 # endif
 # if defined(DELAY_FLAG)
     if (__isSmallInteger(fd)) {
-        int f = __intVal(fd);
-
-        flags = fcntl(f, F_GETFL, 0);
-        RETURN ((flags & DELAY_FLAG) ? false : true );
+	int f = __intVal(fd);
+
+	flags = fcntl(f, F_GETFL, 0);
+	RETURN ((flags & DELAY_FLAG) ? false : true );
     }
 #  undef DELAY_FLAG
 # endif
@@ -11057,13 +11057,13 @@
 %{
 #if defined(FIONREAD)
     {
-        int n = 0;
-
-        if (__isSmallInteger(fd)) {
-            if (ioctl(__intVal(fd), FIONREAD, &n) >= 0) {
-                RETURN (__MKINT(n));
-            }
-        }
+	int n = 0;
+
+	if (__isSmallInteger(fd)) {
+	    if (ioctl(__intVal(fd), FIONREAD, &n) >= 0) {
+		RETURN (__MKINT(n));
+	    }
+	}
     }
 #endif /* FIONREAD */
 %}.
@@ -11078,8 +11078,8 @@
 %{
 #ifdef __SCHTEAM__
     {
-        int avail = fd.streamAvailable();
-        return __c__._RETURN (avail > 0 ? STObject.True : STObject.False);
+	int avail = fd.streamAvailable();
+	return __c__._RETURN (avail > 0 ? STObject.True : STObject.False);
     }
     /* NOTREACHED */
 #else
@@ -11088,11 +11088,11 @@
      */
 # if 0 && defined(FIONREAD)
     if (__isSmallInteger(fd)) {
-        int result = 0;
-
-        if (ioctl(__smallIntegerVal(fd), FIONREAD, &result) >= 0) {
-            RETURN(result > 0 ? true : false);
-        }
+	int result = 0;
+
+	if (ioctl(__smallIntegerVal(fd), FIONREAD, &result) >= 0) {
+	    RETURN(result > 0 ? true : false);
+	}
     }
 # endif /* FIONREAD */
 #endif
@@ -11102,9 +11102,9 @@
 !
 
 selectOnAnyReadable:readFdArray writable:writeFdArray exception:exceptFdArray
-        readableInto:readableResultFdArray writableInto:writableResultFdArray
-        exceptionInto:exceptionResultFdArray
-        withTimeOut:millis
+	readableInto:readableResultFdArray writableInto:writableResultFdArray
+	exceptionInto:exceptionResultFdArray
+	withTimeOut:millis
 
     "wait for any fd in readFdArray (an Array of integers) to become ready for reading,
      writeFdArray to become ready for writing,
@@ -11134,32 +11134,32 @@
     int numFds = 0;
 
     if (readableResultFdArray != nil) {
-        if (! __isArrayLike(readableResultFdArray)) {
-            goto fail;
-        }
-        resultSizeReadable = __arraySize(readableResultFdArray);
+	if (! __isArrayLike(readableResultFdArray)) {
+	    goto fail;
+	}
+	resultSizeReadable = __arraySize(readableResultFdArray);
     }
     if (writableResultFdArray != nil) {
-        if (! __isArrayLike(writableResultFdArray)) {
-            goto fail;
-        }
-        resultSizeWritable = __arraySize(writableResultFdArray);
-        if (readableResultFdArray == writableResultFdArray) {
-            // allow common result set for read/write/except
-            pcntW = &cntR;
-        }
+	if (! __isArrayLike(writableResultFdArray)) {
+	    goto fail;
+	}
+	resultSizeWritable = __arraySize(writableResultFdArray);
+	if (readableResultFdArray == writableResultFdArray) {
+	    // allow common result set for read/write/except
+	    pcntW = &cntR;
+	}
     }
     if (exceptionResultFdArray != nil) {
-        if (! __isArrayLike(exceptionResultFdArray)) {
-            goto fail;
-        }
-        resultSizeException = __arraySize(exceptionResultFdArray);
-        if (exceptionResultFdArray == readableResultFdArray) {
-            // allow common result set for read/write/except
-            pcntE = &cntR;
-        } else if (exceptionResultFdArray == writableResultFdArray) {
-            pcntE = &cntW;
-        }
+	if (! __isArrayLike(exceptionResultFdArray)) {
+	    goto fail;
+	}
+	resultSizeException = __arraySize(exceptionResultFdArray);
+	if (exceptionResultFdArray == readableResultFdArray) {
+	    // allow common result set for read/write/except
+	    pcntE = &cntR;
+	} else if (exceptionResultFdArray == writableResultFdArray) {
+	    pcntE = &cntW;
+	}
     }
 
     FD_ZERO(&rset);
@@ -11168,121 +11168,121 @@
 
     maxF = -1;
     if (readFdArray != nil) {
-        int i, count;
-
-        if (! __isArrayLike(readFdArray)) {
-            goto fail;
-        }
-        count = __arraySize(readFdArray);
-
-        for (i=0; i<count;i++) {
-            OBJ fd;
-
-            fd = __arrayVal(readFdArray)[i];
-            if (fd != nil) {
-                if (! __isSmallInteger(fd)) {
-                    if (@global(InfoPrinting) == true) {
-                        fprintf(stderr, "OS [warning]: funny read-fd (0x%lx) given to select\n", (unsigned long)fd);
-                    }
-                } else {
-                    int f;
-
-                    f = __intVal(fd);
-                    if ((unsigned)f < FD_SETSIZE) {
-                        FD_SET(f, &rset);
-                        if (f > maxF) maxF = f;
-                        numFds++;
-                    } else {
-                        if (@global(InfoPrinting) == true) {
-                            fprintf(stderr, "OS [warning]: huge read-fd (0x%lx) given to select\n", (unsigned long)fd);
-                        }
-                    }
-                }
-            }
-        }
+	int i, count;
+
+	if (! __isArrayLike(readFdArray)) {
+	    goto fail;
+	}
+	count = __arraySize(readFdArray);
+
+	for (i=0; i<count;i++) {
+	    OBJ fd;
+
+	    fd = __arrayVal(readFdArray)[i];
+	    if (fd != nil) {
+		if (! __isSmallInteger(fd)) {
+		    if (@global(InfoPrinting) == true) {
+			fprintf(stderr, "OS [warning]: funny read-fd (0x%lx) given to select\n", (unsigned long)fd);
+		    }
+		} else {
+		    int f;
+
+		    f = __intVal(fd);
+		    if ((unsigned)f < FD_SETSIZE) {
+			FD_SET(f, &rset);
+			if (f > maxF) maxF = f;
+			numFds++;
+		    } else {
+			if (@global(InfoPrinting) == true) {
+			    fprintf(stderr, "OS [warning]: huge read-fd (0x%lx) given to select\n", (unsigned long)fd);
+			}
+		    }
+		}
+	    }
+	}
     }
 
     if (writeFdArray != nil) {
-        int i, count;
-
-        if (! __isArrayLike(writeFdArray)) {
-            goto fail;
-        }
-        count = __arraySize(writeFdArray);
-        for (i=0; i<count;i++) {
-            OBJ fd;
-
-            fd = __arrayVal(writeFdArray)[i];
-            if (fd != nil) {
-                if (! __isSmallInteger(fd)) {
-                    if (@global(InfoPrinting) == true) {
-                        fprintf(stderr, "OS [warning]: funny write-fd (0x%lx) given to select\n", (unsigned long)fd);
-                    }
-                } else {
-                    int f;
-
-                    f = __intVal(fd);
-                    if ((unsigned)f < FD_SETSIZE) {
-                        FD_SET(f, &wset);
-                        if (f > maxF) maxF = f;
-                        numFds++;
-                    } else {
-                        if (@global(InfoPrinting) == true) {
-                            fprintf(stderr, "OS [warning]: huge write-fd (0x%lx) given to select\n", (unsigned long)fd);
-                        }
-                    }
-                }
-            }
-        }
+	int i, count;
+
+	if (! __isArrayLike(writeFdArray)) {
+	    goto fail;
+	}
+	count = __arraySize(writeFdArray);
+	for (i=0; i<count;i++) {
+	    OBJ fd;
+
+	    fd = __arrayVal(writeFdArray)[i];
+	    if (fd != nil) {
+		if (! __isSmallInteger(fd)) {
+		    if (@global(InfoPrinting) == true) {
+			fprintf(stderr, "OS [warning]: funny write-fd (0x%lx) given to select\n", (unsigned long)fd);
+		    }
+		} else {
+		    int f;
+
+		    f = __intVal(fd);
+		    if ((unsigned)f < FD_SETSIZE) {
+			FD_SET(f, &wset);
+			if (f > maxF) maxF = f;
+			numFds++;
+		    } else {
+			if (@global(InfoPrinting) == true) {
+			    fprintf(stderr, "OS [warning]: huge write-fd (0x%lx) given to select\n", (unsigned long)fd);
+			}
+		    }
+		}
+	    }
+	}
     }
 
     if (exceptFdArray != nil) {
-        int i, count;
-
-        if (! __isArrayLike(exceptFdArray)) {
-            goto fail;
-        }
-        count = __arraySize(exceptFdArray);
-        for (i=0; i<count;i++) {
-            OBJ fd;
-
-            fd = __arrayVal(exceptFdArray)[i];
-            if (fd != nil) {
-                if (! __isSmallInteger(fd)) {
-                    if (@global(InfoPrinting) == true) {
-                        fprintf(stderr, "OS [warning]: funny except-fd (0x%lx) given to select\n", (unsigned long)fd);
-                    }
-                } else {
-                    int f;
-
-                    f = __intVal(fd);
-                    if ((unsigned)f < FD_SETSIZE) {
-                        FD_SET(f, &eset);
-                        if (f > maxF) maxF = f;
-                        numFds++;
-                    } else {
-                        if (@global(InfoPrinting) == true) {
-                            fprintf(stderr, "OS [warning]: huge except-fd (0x%lx) given to select\n", (unsigned long)fd);
-                        }
-                    }
-                }
-            }
-        }
+	int i, count;
+
+	if (! __isArrayLike(exceptFdArray)) {
+	    goto fail;
+	}
+	count = __arraySize(exceptFdArray);
+	for (i=0; i<count;i++) {
+	    OBJ fd;
+
+	    fd = __arrayVal(exceptFdArray)[i];
+	    if (fd != nil) {
+		if (! __isSmallInteger(fd)) {
+		    if (@global(InfoPrinting) == true) {
+			fprintf(stderr, "OS [warning]: funny except-fd (0x%lx) given to select\n", (unsigned long)fd);
+		    }
+		} else {
+		    int f;
+
+		    f = __intVal(fd);
+		    if ((unsigned)f < FD_SETSIZE) {
+			FD_SET(f, &eset);
+			if (f > maxF) maxF = f;
+			numFds++;
+		    } else {
+			if (@global(InfoPrinting) == true) {
+			    fprintf(stderr, "OS [warning]: huge except-fd (0x%lx) given to select\n", (unsigned long)fd);
+			}
+		    }
+		}
+	    }
+	}
     }
 
     if (millis == nil) {
-        wtp = NULL;         // wait forever
+	wtp = NULL;         // wait forever
     } else if (__isSmallInteger(millis)) {
-        __millis = __intVal(millis);
-        if (__millis > 0) {
-            wt.tv_sec = __millis / 1000;
-            wt.tv_usec = (__millis % 1000) * 1000;
-        } else {
-            wt.tv_sec = wt.tv_usec = 0;
-        }
-        wtp = &wt;
+	__millis = __intVal(millis);
+	if (__millis > 0) {
+	    wt.tv_sec = __millis / 1000;
+	    wt.tv_usec = (__millis % 1000) * 1000;
+	} else {
+	    wt.tv_sec = wt.tv_usec = 0;
+	}
+	wtp = &wt;
     } else {
-        goto fail;
+	goto fail;
     }
 
     /*
@@ -11292,74 +11292,74 @@
     __BEGIN_INTERRUPTABLE__
 
     if (__millis == 0) {
-        /*
-         * if there is no timeout time, we can stay here interruptable.
-         */
-        do {
-            ret = select(maxF+1, &rset, &wset, &eset, wtp);
-        } while ((ret < 0) && (errno == EINTR));
+	/*
+	 * if there is no timeout time, we can stay here interruptable.
+	 */
+	do {
+	    ret = select(maxF+1, &rset, &wset, &eset, wtp);
+	} while ((ret < 0) && (errno == EINTR));
     } else {
-        do {
-            ret = select(maxF+1, &rset, &wset, &eset, wtp);
-            /*
-             * for now: don't loop; if we did, we had to adjust the vt-timeval;
-             * could otherwise stay in this loop forever ...
-             * Premature ret (before the time expired) must be handled by the caller.
-             * A good solution is to update the wt-timeval and redo the select.
-             */
-        } while (0 /* (ret < 0) && (errno == EINTR) */ );
+	do {
+	    ret = select(maxF+1, &rset, &wset, &eset, wtp);
+	    /*
+	     * for now: don't loop; if we did, we had to adjust the vt-timeval;
+	     * could otherwise stay in this loop forever ...
+	     * Premature ret (before the time expired) must be handled by the caller.
+	     * A good solution is to update the wt-timeval and redo the select.
+	     */
+	} while (0 /* (ret < 0) && (errno == EINTR) */ );
     }
     __END_INTERRUPTABLE__
 
     if (ret > 0) {
-        OBJ *__resultR = __arrayVal(readableResultFdArray);
-        OBJ *__resultW = __arrayVal(writableResultFdArray);
-        OBJ *__resultE = __arrayVal(exceptionResultFdArray);
-        int i;
-
-        for (i=0; i <= maxF; i++) {
-            if (FD_ISSET(i, &rset)) {
-                if (*pcntR < resultSizeReadable) {
-                    __resultR[*pcntR] = __mkSmallInteger(i);
-                }
-                (*pcntR)++; cntAll++;
-            }
-
-            if (FD_ISSET(i, &wset)) {
-                if (*pcntW < resultSizeWritable) {
-                    __resultW[*pcntW] = __mkSmallInteger(i);
-                }
-                (*pcntW)++; cntAll++;
-            }
-
-            if (FD_ISSET(i, &eset)) {
-                if (*pcntE < resultSizeException) {
-                    __resultE[*pcntE] = __mkSmallInteger(i);
-                }
-                (*pcntE)++;  cntAll++;
-            }
-        }
-        /* add a delimiter */
-        if (*pcntR < resultSizeReadable) {
-            __resultR[*pcntR] = nil;
-        }
-        if (*pcntW < resultSizeWritable) {
-            __resultW[*pcntW] = nil;
-        }
-        if (*pcntE < resultSizeException) {
-            __resultE[*pcntE] = nil;
-        }
-
-        RETURN (__mkSmallInteger(cntAll));
+	OBJ *__resultR = __arrayVal(readableResultFdArray);
+	OBJ *__resultW = __arrayVal(writableResultFdArray);
+	OBJ *__resultE = __arrayVal(exceptionResultFdArray);
+	int i;
+
+	for (i=0; i <= maxF; i++) {
+	    if (FD_ISSET(i, &rset)) {
+		if (*pcntR < resultSizeReadable) {
+		    __resultR[*pcntR] = __mkSmallInteger(i);
+		}
+		(*pcntR)++; cntAll++;
+	    }
+
+	    if (FD_ISSET(i, &wset)) {
+		if (*pcntW < resultSizeWritable) {
+		    __resultW[*pcntW] = __mkSmallInteger(i);
+		}
+		(*pcntW)++; cntAll++;
+	    }
+
+	    if (FD_ISSET(i, &eset)) {
+		if (*pcntE < resultSizeException) {
+		    __resultE[*pcntE] = __mkSmallInteger(i);
+		}
+		(*pcntE)++;  cntAll++;
+	    }
+	}
+	/* add a delimiter */
+	if (*pcntR < resultSizeReadable) {
+	    __resultR[*pcntR] = nil;
+	}
+	if (*pcntW < resultSizeWritable) {
+	    __resultW[*pcntW] = nil;
+	}
+	if (*pcntE < resultSizeException) {
+	    __resultE[*pcntE] = nil;
+	}
+
+	RETURN (__mkSmallInteger(cntAll));
     } else if (ret < 0 && errno != EINTR) {
-        /*
-         * Error: Return -1
-         */
-        if (@global(InfoPrinting) == true) {
-            fprintf(stderr, "OS [info]: select errno = %d\n", errno);
-        }
-        @global(LastErrorNumber) = __mkSmallInteger(errno);
-        RETURN (__mkSmallInteger(-1));
+	/*
+	 * Error: Return -1
+	 */
+	if (@global(InfoPrinting) == true) {
+	    fprintf(stderr, "OS [info]: select errno = %d\n", errno);
+	}
+	@global(LastErrorNumber) = __mkSmallInteger(errno);
+	RETURN (__mkSmallInteger(-1));
     }
 
     /*
@@ -11406,17 +11406,17 @@
 #  endif
 #  if defined(DELAY_FLAG)
     if (__isSmallInteger(fd)) {
-        int f = __intVal(fd);
-
-        flags = fcntl(f, F_GETFL, 0);
-        if (aBoolean == true) {
-            ret = fcntl(f, F_SETFL, flags & ~DELAY_FLAG);
-        } else if (aBoolean == false) {
-            ret = fcntl(f, F_SETFL, flags | DELAY_FLAG);
-        }
-        if (ret >= 0) {
-            RETURN ((flags & DELAY_FLAG) ? false : true );
-        }
+	int f = __intVal(fd);
+
+	flags = fcntl(f, F_GETFL, 0);
+	if (aBoolean == true) {
+	    ret = fcntl(f, F_SETFL, flags & ~DELAY_FLAG);
+	} else if (aBoolean == false) {
+	    ret = fcntl(f, F_SETFL, flags | DELAY_FLAG);
+	}
+	if (ret >= 0) {
+	    RETURN ((flags & DELAY_FLAG) ? false : true );
+	}
     }
 #   undef DELAY_FLAG
 #  endif
@@ -11460,7 +11460,7 @@
     DEFCONST(ELFDATANUM)
 
     DEFCONST(EI_VERSION)        /* File version byte index */
-                                /* Value must be EV_CURRENT */
+				/* Value must be EV_CURRENT */
 
     DEFCONST(EI_OSABI)          /* OS ABI identification */
     DEFCONST(ELFOSABI_NONE)     /* UNIX System V ABI */
@@ -11642,29 +11642,29 @@
 initializeOnFile: aStringOrFilename
     file := aStringOrFilename asFilename.
     file exists ifFalse:[
-        self error:'Given file does not exist'.
-        ^ nil
+	self error:'Given file does not exist'.
+	^ nil
     ].
     file isRegularFile ifFalse:[
-        self error:'Given file is not a regular file'.
-        ^ nil
+	self error:'Given file is not a regular file'.
+	^ nil
     ].
     file readingFileDo:[ :s |
-        s binary.
-        data := s next: 16r18.
-        (data at: 1 + EI_MAG0) ~~ ELFMAG0 ifTrue:[
-            self error:'Given file is not a valid ELF file (magic not found)'.
-        ].
-        (data at: 1 + EI_MAG1) ~~ ELFMAG1 ifTrue:[
-            self error:'Given file is not a valid ELF file (magic not found)'.
-        ].
-        (data at: 1 + EI_MAG2) ~~ ELFMAG2 ifTrue:[
-            self error:'Given file is not a valid ELF file (magic not found)'.
-        ].
-        (data at: 1 + EI_MAG3) ~~ ELFMAG3 ifTrue:[
-            self error:'Given file is not a valid ELF file (magic not found)'.
-        ].
-        msb := (data at: 1 + EI_DATA) == ELFDATA2MSB
+	s binary.
+	data := s next: 16r18.
+	(data at: 1 + EI_MAG0) ~~ ELFMAG0 ifTrue:[
+	    self error:'Given file is not a valid ELF file (magic not found)'.
+	].
+	(data at: 1 + EI_MAG1) ~~ ELFMAG1 ifTrue:[
+	    self error:'Given file is not a valid ELF file (magic not found)'.
+	].
+	(data at: 1 + EI_MAG2) ~~ ELFMAG2 ifTrue:[
+	    self error:'Given file is not a valid ELF file (magic not found)'.
+	].
+	(data at: 1 + EI_MAG3) ~~ ELFMAG3 ifTrue:[
+	    self error:'Given file is not a valid ELF file (magic not found)'.
+	].
+	msb := (data at: 1 + EI_DATA) == ELFDATA2MSB
     ].
 
     "Created: / 16-03-2015 / 16:13:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -11690,14 +11690,14 @@
     "one of our registered handles has been collected"
 
     aspect == #ElementExpired ifTrue:[
-        OpenFiles keysAndValuesDo:[:fd :handle |
-            handle class == SmallInteger ifTrue:[
-                "Have to close the file descriptor"
-
-                OperatingSystem closeFd:fd.
-                OpenFiles at:fd put:nil.
-            ].
-        ].
+	OpenFiles keysAndValuesDo:[:fd :handle |
+	    handle class == SmallInteger ifTrue:[
+		"Have to close the file descriptor"
+
+		OperatingSystem closeFd:fd.
+		OpenFiles at:fd put:nil.
+	    ].
+	].
     ].
 
     "Created: 30.9.1997 / 12:57:35 / stefan"
@@ -11710,7 +11710,7 @@
     OpenFiles addDependent:self.
 
     "
-        self initialize
+	self initialize
     "
 
     "Created: 26.9.1997 / 17:15:50 / stefan"
@@ -11734,7 +11734,7 @@
      or the error number as returned by the OperatingSystem"
 
     anErrorSymbolOrErrno isInteger ifTrue:[
-        (UnixOperatingSystem errorHolderForNumber:anErrorSymbolOrErrno) reportError
+	(UnixOperatingSystem errorHolderForNumber:anErrorSymbolOrErrno) reportError
     ].
     self primitiveFailed:anErrorSymbolOrErrno.
 ! !
@@ -11769,7 +11769,7 @@
     "/ the 0 is possible, if an fd was open when saving a snapshot image,
     "/ and we come up in the new image with no one referring to it.
     (oldHandle notNil and:[oldHandle class ~~ SmallInteger and:[ oldHandle ~~ self]]) ifTrue:[
-        oldHandle invalidate.
+	oldHandle invalidate.
     ].
     self register.
 
@@ -11799,110 +11799,110 @@
     int nInstBytes, objSize;
 
     if (! __isSmallInteger(__INST(fd))) {
-        error = @symbol(errorNotOpen);
-        goto bad;
+	error = @symbol(errorNotOpen);
+	goto bad;
     }
     if (! __bothSmallInteger(count, firstIndex)) {
-        error = @symbol(badArgument);
-        goto bad;
+	error = @symbol(badArgument);
+	goto bad;
     }
     fd = __smallIntegerVal(__INST(fd));
     cnt = __smallIntegerVal(count);
     offs = __smallIntegerVal(firstIndex) - 1;
 
     if (fd < 0) {
-        error = @symbol(internalError);
-        goto bad;
+	error = @symbol(internalError);
+	goto bad;
     }
     if (__isExternalBytesLike(aByteBuffer)) {
-        OBJ sz;
-
-        nInstBytes = 0;
-        extPtr = (char *)(__externalBytesAddress(aByteBuffer));
-        if (extPtr == NULL) goto bad;
-        sz = __externalBytesSize(aByteBuffer);
-        if (__isSmallInteger(sz)) {
-            objSize = __smallIntegerVal(sz);
-        } else {
-            objSize = -1; /* unknown */
-        }
+	OBJ sz;
+
+	nInstBytes = 0;
+	extPtr = (char *)(__externalBytesAddress(aByteBuffer));
+	if (extPtr == NULL) goto bad;
+	sz = __externalBytesSize(aByteBuffer);
+	if (__isSmallInteger(sz)) {
+	    objSize = __smallIntegerVal(sz);
+	} else {
+	    objSize = -1; /* unknown */
+	}
     } else {
-        OBJ oClass = __Class(aByteBuffer);
-        int nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
-
-        nInstBytes = OHDR_SIZE + __OBJS2BYTES__(nInstVars);
-        switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
-            case BYTEARRAY:
-            case WORDARRAY:
-            case LONGARRAY:
-            case SWORDARRAY:
-            case SLONGARRAY:
-            case FLOATARRAY:
-                break;
-            case DOUBLEARRAY:
+	OBJ oClass = __Class(aByteBuffer);
+	int nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
+
+	nInstBytes = OHDR_SIZE + __OBJS2BYTES__(nInstVars);
+	switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
+	    case BYTEARRAY:
+	    case WORDARRAY:
+	    case LONGARRAY:
+	    case SWORDARRAY:
+	    case SLONGARRAY:
+	    case FLOATARRAY:
+		break;
+	    case DOUBLEARRAY:
 #ifdef __NEED_DOUBLE_ALIGN
-                nInstBytes = (nInstBytes-1+__DOUBLE_ALIGN) &~ (__DOUBLE_ALIGN-1);
-#endif
-                break;
-            case LONGLONGARRAY:
-            case SLONGLONGARRAY:
+		nInstBytes = (nInstBytes-1+__DOUBLE_ALIGN) &~ (__DOUBLE_ALIGN-1);
+#endif
+		break;
+	    case LONGLONGARRAY:
+	    case SLONGLONGARRAY:
 #ifdef __NEED_LONGLONG_ALIGN
-                nInstBytes = (nInstBytes-1+__LONGLONG_ALIGN) &~ (__LONGLONG_ALIGN-1);
-#endif
-                break;
-            default:
-                goto bad;
-        }
-        extPtr = (char *)0;
-        objSize = __Size(aByteBuffer) - nInstBytes;
+		nInstBytes = (nInstBytes-1+__LONGLONG_ALIGN) &~ (__LONGLONG_ALIGN-1);
+#endif
+		break;
+	    default:
+		goto bad;
+	}
+	extPtr = (char *)0;
+	objSize = __Size(aByteBuffer) - nInstBytes;
     }
     if ((offs >= 0)
-        && (cnt >= 0)
-        && ((objSize == -1) || (objSize >= (cnt + offs)))) {
-        nRead = 0;
-
-        do {
-            int n;
-
-            if (extPtr) {
-                n = read(fd, extPtr+offs, cnt);
-            } else {
-                char *bp;
-
-                /*
-                 * on interrupt, anObject may be moved to another location.
-                 * So we recompute the byte-address here.
-                 */
-                bp = __byteArrayVal(aByteBuffer) + nInstBytes;
-
-                n = read(fd, bp + offs, cnt);
-            }
-            if (n > 0) {
-                cnt -= n;
-                offs += n;
-                nRead += n;
-            } else if (n == 0) {
-                break;
-            } else if (n < 0) {
-                if (0
+	&& (cnt >= 0)
+	&& ((objSize == -1) || (objSize >= (cnt + offs)))) {
+	nRead = 0;
+
+	do {
+	    int n;
+
+	    if (extPtr) {
+		n = read(fd, extPtr+offs, cnt);
+	    } else {
+		char *bp;
+
+		/*
+		 * on interrupt, anObject may be moved to another location.
+		 * So we recompute the byte-address here.
+		 */
+		bp = __byteArrayVal(aByteBuffer) + nInstBytes;
+
+		n = read(fd, bp + offs, cnt);
+	    }
+	    if (n > 0) {
+		cnt -= n;
+		offs += n;
+		nRead += n;
+	    } else if (n == 0) {
+		break;
+	    } else if (n < 0) {
+		if (0
 #ifdef EWOULDBLOCK
-                    || errno == EWOULDBLOCK
+		    || errno == EWOULDBLOCK
 #endif
 #ifdef EAGAIN
-                    || errno == EAGAIN
-#endif
-                ) {
-                     RETURN(nil);
-                }
-                if (errno != EINTR) {
-                     error = __mkSmallInteger(errno);
-                     goto bad;
-                }
-                __HANDLE_INTERRUPTS__;
-            }
-        } while (cnt > 0);
-
-        RETURN (__mkSmallInteger(nRead));
+		    || errno == EAGAIN
+#endif
+		) {
+		     RETURN(nil);
+		}
+		if (errno != EINTR) {
+		     error = __mkSmallInteger(errno);
+		     goto bad;
+		}
+		__HANDLE_INTERRUPTS__;
+	    }
+	} while (cnt > 0);
+
+	RETURN (__mkSmallInteger(nRead));
     }
 bad: ;
 %}.
@@ -11941,110 +11941,110 @@
     int nInstBytes, objSize;
 
     if (! __isSmallInteger(__INST(fd))) {
-        error = @symbol(errorNotOpen);
-        goto bad;
+	error = @symbol(errorNotOpen);
+	goto bad;
     }
     if (! __bothSmallInteger(count, firstIndex)) {
-        error = @symbol(badArgument);
-        goto bad;
+	error = @symbol(badArgument);
+	goto bad;
     }
     fd = __smallIntegerVal(__INST(fd));
     cnt = __smallIntegerVal(count);
     offs = __smallIntegerVal(firstIndex) - 1;
 
     if (fd < 0) {
-        error = @symbol(internalError);
-        goto bad;
+	error = @symbol(internalError);
+	goto bad;
     }
     if (__isExternalBytesLike(aByteBuffer)) {
-        OBJ sz;
-
-        nInstBytes = 0;
-        extPtr = (char *)(__externalBytesAddress(aByteBuffer));
-        if (extPtr == NULL) goto bad;
-        sz = __externalBytesSize(aByteBuffer);
-        if (__isSmallInteger(sz)) {
-            objSize = __smallIntegerVal(sz);
-        } else {
-            objSize = -1; /* unknown */
-        }
+	OBJ sz;
+
+	nInstBytes = 0;
+	extPtr = (char *)(__externalBytesAddress(aByteBuffer));
+	if (extPtr == NULL) goto bad;
+	sz = __externalBytesSize(aByteBuffer);
+	if (__isSmallInteger(sz)) {
+	    objSize = __smallIntegerVal(sz);
+	} else {
+	    objSize = -1; /* unknown */
+	}
     } else {
-        OBJ oClass = __Class(aByteBuffer);
-        int nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
-
-        nInstBytes = OHDR_SIZE + __OBJS2BYTES__(nInstVars);
-        switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
-            case BYTEARRAY:
-            case WORDARRAY:
-            case LONGARRAY:
-            case SWORDARRAY:
-            case SLONGARRAY:
-            case FLOATARRAY:
-                break;
-            case DOUBLEARRAY:
+	OBJ oClass = __Class(aByteBuffer);
+	int nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
+
+	nInstBytes = OHDR_SIZE + __OBJS2BYTES__(nInstVars);
+	switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
+	    case BYTEARRAY:
+	    case WORDARRAY:
+	    case LONGARRAY:
+	    case SWORDARRAY:
+	    case SLONGARRAY:
+	    case FLOATARRAY:
+		break;
+	    case DOUBLEARRAY:
 #ifdef __NEED_DOUBLE_ALIGN
-                nInstBytes = (nInstBytes-1+__DOUBLE_ALIGN) &~ (__DOUBLE_ALIGN-1);
-#endif
-                break;
-            case LONGLONGARRAY:
-            case SLONGLONGARRAY:
+		nInstBytes = (nInstBytes-1+__DOUBLE_ALIGN) &~ (__DOUBLE_ALIGN-1);
+#endif
+		break;
+	    case LONGLONGARRAY:
+	    case SLONGLONGARRAY:
 #ifdef __NEED_LONGLONG_ALIGN
-                nInstBytes = (nInstBytes-1+__LONGLONG_ALIGN) &~ (__LONGLONG_ALIGN-1);
-#endif
-                break;
-            default:
-                goto bad;
-        }
-        extPtr = (char *)0;
-        objSize = __Size(aByteBuffer) - nInstBytes;
+		nInstBytes = (nInstBytes-1+__LONGLONG_ALIGN) &~ (__LONGLONG_ALIGN-1);
+#endif
+		break;
+	    default:
+		goto bad;
+	}
+	extPtr = (char *)0;
+	objSize = __Size(aByteBuffer) - nInstBytes;
     }
     if ((offs >= 0)
-        && (cnt >= 0)
-        && ((objSize == -1) || (objSize >= (cnt + offs)))) {
-        nWritten = 0;
-
-        do {
-            int n;
-
-            if (extPtr) {
-                n = write(fd, extPtr+offs, cnt);
-            } else {
-                char *bp;
-
-                /*
-                 * on interrupt, anObject may be moved to another location.
-                 * So we recompute the byte-address here.
-                 */
-                bp = __byteArrayVal(aByteBuffer) + nInstBytes;
-
-                n = write(fd, bp + offs, cnt);
-            }
-            if (n > 0) {
-                cnt -= n;
-                offs += n;
-                nWritten += n;
-            } else if (n == 0) {
-                break;
-            } else if (n < 0) {
-                if (0
+	&& (cnt >= 0)
+	&& ((objSize == -1) || (objSize >= (cnt + offs)))) {
+	nWritten = 0;
+
+	do {
+	    int n;
+
+	    if (extPtr) {
+		n = write(fd, extPtr+offs, cnt);
+	    } else {
+		char *bp;
+
+		/*
+		 * on interrupt, anObject may be moved to another location.
+		 * So we recompute the byte-address here.
+		 */
+		bp = __byteArrayVal(aByteBuffer) + nInstBytes;
+
+		n = write(fd, bp + offs, cnt);
+	    }
+	    if (n > 0) {
+		cnt -= n;
+		offs += n;
+		nWritten += n;
+	    } else if (n == 0) {
+		break;
+	    } else if (n < 0) {
+		if (0
 #ifdef EWOULDBLOCK
-                    || errno == EWOULDBLOCK
+		    || errno == EWOULDBLOCK
 #endif
 #ifdef EAGAIN
-                    || errno == EAGAIN
-#endif
-                ) {
-                     RETURN(nil);
-                }
-                if (errno != EINTR) {
-                     error = __mkSmallInteger(errno);
-                     goto bad;
-                }
-                __HANDLE_INTERRUPTS__;
-            }
-        } while (cnt > 0);
-
-        RETURN (__mkSmallInteger(nWritten));
+		    || errno == EAGAIN
+#endif
+		) {
+		     RETURN(nil);
+		}
+		if (errno != EINTR) {
+		     error = __mkSmallInteger(errno);
+		     goto bad;
+		}
+		__HANDLE_INTERRUPTS__;
+	    }
+	} while (cnt > 0);
+
+	RETURN (__mkSmallInteger(nWritten));
     }
 bad: ;
 %}.
@@ -12095,50 +12095,50 @@
     OBJ rslt;
 
     if (! __isSmallInteger(__INST(fd))) {
-        error = @symbol(errorNotOpen);
-        goto bad;
+	error = @symbol(errorNotOpen);
+	goto bad;
     }
     if (__isSmallInteger(newPosition)) {
-        pos = __smallIntegerVal(newPosition);
+	pos = __smallIntegerVal(newPosition);
     } else {
-        pos = __signedLongIntVal(newPosition);
-        if (pos < 0 && (sizeof(pos) < 8 || __signedLong64IntVal(newPosition, &pos) == 0)) {
-            error = @symbol(badArgument1);
-            goto bad;
-        }
+	pos = __signedLongIntVal(newPosition);
+	if (pos < 0 && (sizeof(pos) < 8 || __signedLong64IntVal(newPosition, &pos) == 0)) {
+	    error = @symbol(badArgument1);
+	    goto bad;
+	}
     }
 
     fd = __smallIntegerVal(__INST(fd));
     if (fd < 0) {
-        error = @symbol(internalError);
-        goto bad;
+	error = @symbol(internalError);
+	goto bad;
     }
     if (whence == @symbol(begin)) {
-        __whence = SEEK_SET;
+	__whence = SEEK_SET;
     } else if (whence == @symbol(current)) {
-        __whence = SEEK_CUR;
+	__whence = SEEK_CUR;
     } else if (whence == @symbol(end)) {
-        __whence = SEEK_END;
+	__whence = SEEK_END;
     } else {
-        error = @symbol(badArgument2);
-        goto bad;
+	error = @symbol(badArgument2);
+	goto bad;
     }
 
 again:
     ret = lseek(fd, pos, __whence);
     if (ret < 0) {
-        if (errno == EINTR) {
-            __HANDLE_INTERRUPTS__;
-            goto again;
-        }
-        error = __mkSmallInteger(errno);
-        goto bad;
+	if (errno == EINTR) {
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
+	}
+	error = __mkSmallInteger(errno);
+	goto bad;
     }
 
     if (sizeof(ret) == 8) {
-        rslt = __MKINT64 (&ret);
+	rslt = __MKINT64 (&ret);
     } else {
-        rslt = __MKINT(ret);
+	rslt = __MKINT(ret);
     }
     RETURN (rslt);
 
@@ -12165,9 +12165,9 @@
      Experimental."
 
     ^ OperatingSystem selectOnAnyReadable:(Array with:fd)
-                      writable:(Array with:fd)
-                     exception:nil
-                   withTimeOut:millis
+		      writable:(Array with:fd)
+		     exception:nil
+		   withTimeOut:millis
 
     "Created: 1.10.1997 / 08:51:11 / stefan"
 !
@@ -12198,19 +12198,19 @@
 #  endif
 #  if defined(DELAY_FLAG)
     if (__isSmallInteger(__INST(fd))) {
-        int f = __intVal(__INST(fd));
-
-        flags = fcntl(f, F_GETFL, 0);
-        if (aBoolean == true) {
-            ret = fcntl(f, F_SETFL, flags & ~DELAY_FLAG);
-        } else {
-            ret = fcntl(f, F_SETFL, flags | DELAY_FLAG);
-        }
-        if (ret >= 0) {
-            RETURN(__mkSmallInteger(flags));
-        } else {
-            err = __mkSmallInteger(errno);
-        }
+	int f = __intVal(__INST(fd));
+
+	flags = fcntl(f, F_GETFL, 0);
+	if (aBoolean == true) {
+	    ret = fcntl(f, F_SETFL, flags & ~DELAY_FLAG);
+	} else {
+	    ret = fcntl(f, F_SETFL, flags | DELAY_FLAG);
+	}
+	if (ret >= 0) {
+	    RETURN(__mkSmallInteger(flags));
+	} else {
+	    err = __mkSmallInteger(errno);
+	}
     }
 #  undef DELAY_FLAG
 #  endif /* DELAY_FLAG */
@@ -12218,7 +12218,7 @@
 #endif /* not SCHTEAM */
 %}.
     err notNil ifTrue:[
-        self error:err
+	self error:err
     ].
 
     "
@@ -12238,7 +12238,7 @@
     OBJ handle = __externalAddressVal(self);
 
     if (__isSmallInteger(handle)) {
-        RETURN (handle);
+	RETURN (handle);
     }
 %}.
     ^ nil
@@ -12248,7 +12248,7 @@
 
 %{
     if (__isSmallInteger(anInteger)) {
-        __externalAddressVal(self) = (OBJ)(__smallIntegerVal(anInteger));
+	__externalAddressVal(self) = (OBJ)(__smallIntegerVal(anInteger));
     }
 %}
 
@@ -12266,37 +12266,37 @@
     int fd;
 
     if (__isSmallInteger(__INST(fd))) {
-        fd = __smallIntegerVal(__INST(fd));
-
-        /*
-         * if available, try FIONREAD first, which is usually done faster.
-         */
+	fd = __smallIntegerVal(__INST(fd));
+
+	/*
+	 * if available, try FIONREAD first, which is usually done faster.
+	 */
 # ifdef FIONREAD
-        {
-            int result = 0;
-
-            if (ioctl(fd, FIONREAD, &result) >= 0) {
-                RETURN(result > 0 ? true : false);
-            }
-        }
+	{
+	    int result = 0;
+
+	    if (ioctl(fd, FIONREAD, &result) >= 0) {
+		RETURN(result > 0 ? true : false);
+	    }
+	}
 # endif /* FIONREAD */
     }
 %}.
 
     OperatingSystem supportsSelect ifFalse:[
-        "/ mhmh - what should we do then ?
-        "/ For now, return true as if data was present,
-        "/ and let the thread fall into the read.
-        "/ It will then (hopefully) be desceduled there and
-        "/ effectively polling for input.
-
-        ^ true
+	"/ mhmh - what should we do then ?
+	"/ For now, return true as if data was present,
+	"/ and let the thread fall into the read.
+	"/ It will then (hopefully) be desceduled there and
+	"/ effectively polling for input.
+
+	^ true
     ].
 
     ^ (OperatingSystem selectOnAnyReadable:(Array with:fd)
-                       writable:nil
-                       exception:nil
-                       withTimeOut:0) == fd
+		       writable:nil
+		       exception:nil
+		       withTimeOut:0) == fd
 
     "
      |h n|
@@ -12319,18 +12319,18 @@
     "return true, if filedescriptor can be written without blocking"
 
     OperatingSystem supportsSelect ifFalse:[
-        "/ mhmh - what should we do then ?
-        "/ For now, return true as if data was present,
-        "/ and let the thread fall into the write.
-        "/ It will then (hopefully) be desceduled there and
-        "/ effectively polling for output.
-        ^ true
+	"/ mhmh - what should we do then ?
+	"/ For now, return true as if data was present,
+	"/ and let the thread fall into the write.
+	"/ It will then (hopefully) be desceduled there and
+	"/ effectively polling for output.
+	^ true
     ].
 
     ^ (OperatingSystem selectOnAnyReadable:nil
-                       writable:(Array with:fd)
-                       exception:nil
-                       withTimeOut:0) == fd
+		       writable:(Array with:fd)
+		       exception:nil
+		       withTimeOut:0) == fd
 !
 
 isValid
@@ -12349,13 +12349,13 @@
      */
 # if defined(FIONREAD)
     {
-        int n = 0;
-
-        if (__isSmallInteger(__INST(fd))) {
-            if (ioctl(__smallIntegerVal(__INST(fd)), FIONREAD, &n) >= 0) {
-                RETURN (__MKINT(n));
-            }
-        }
+	int n = 0;
+
+	if (__isSmallInteger(__INST(fd))) {
+	    if (ioctl(__smallIntegerVal(__INST(fd)), FIONREAD, &n) >= 0) {
+		RETURN (__MKINT(n));
+	    }
+	}
     }
 # endif /* FIONREAD */
 %}.
@@ -12379,21 +12379,21 @@
 
     sz := OpenFiles size.
     fd > sz ifTrue:[
-        "grow for more descriptors"
-        old := OpenFiles.
-
-        "JV@2013-03-15: It may happen that OS returns a filedescriptor whose value
-         is larger than twice the length of the weakarray. Care for this.
-         Spotted by Martin Kobetic."
-        OpenFiles := WeakArray new:((sz * 2) max:fd).
-        old removeDependent:(self class).
-        OpenFiles addDependent:(self class).
-        old keysAndValuesDo:[:index :elem|
-            "be careful to not overwrite new entries in OpenFiles"
-            elem notNil ifTrue:[
-                OpenFiles at:index put:elem.
-            ].
-        ].
+	"grow for more descriptors"
+	old := OpenFiles.
+
+	"JV@2013-03-15: It may happen that OS returns a filedescriptor whose value
+	 is larger than twice the length of the weakarray. Care for this.
+	 Spotted by Martin Kobetic."
+	OpenFiles := WeakArray new:((sz * 2) max:fd).
+	old removeDependent:(self class).
+	OpenFiles addDependent:(self class).
+	old keysAndValuesDo:[:index :elem|
+	    "be careful to not overwrite new entries in OpenFiles"
+	    elem notNil ifTrue:[
+		OpenFiles at:index put:elem.
+	    ].
+	].
     ].
     OpenFiles at:fd put:self.
 
@@ -12427,25 +12427,25 @@
 
     fd isNil ifTrue:[^ self error:#errorNotOpen].
     self canReadWithoutBlocking ifTrue:[
-        ^ false.
+	^ false.
     ].
 
     wasBlocked := OperatingSystem blockInterrupts.
     inputSema := Semaphore name:'readWait'.
     [
-        timeout notNil ifTrue:[
-            Processor signal:inputSema afterMilliseconds:timeout
-        ].
-        Processor signal:inputSema onInput:fd.
-        Processor activeProcess state:#ioWait.
-        inputSema wait.
-        hasData := self canReadWithoutBlocking.
+	timeout notNil ifTrue:[
+	    Processor signal:inputSema afterMilliseconds:timeout
+	].
+	Processor signal:inputSema onInput:fd.
+	Processor activeProcess state:#ioWait.
+	inputSema wait.
+	hasData := self canReadWithoutBlocking.
     ] ifCurtailed:[
-        Processor disableSemaphore:inputSema.
-        wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+	Processor disableSemaphore:inputSema.
+	wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ].
     timeout notNil ifTrue:[
-        Processor disableSemaphore:inputSema.
+	Processor disableSemaphore:inputSema.
     ].
     wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ^ hasData not
@@ -12464,25 +12464,25 @@
 
     fd isNil ifTrue:[^ self error:#errorNotOpen].
     self canWriteWithoutBlocking ifTrue:[
-        ^ false.
+	^ false.
     ].
 
     wasBlocked := OperatingSystem blockInterrupts.
     outputSema := Semaphore name:'writeWait'.
     [
-        timeout notNil ifTrue:[
-            Processor signal:outputSema afterMilliseconds:timeout
-        ].
-        Processor signal:outputSema onOutput:fd.
-        Processor activeProcess state:#ioWait.
-        outputSema wait.
-        canWrite := self canWriteWithoutBlocking.
+	timeout notNil ifTrue:[
+	    Processor signal:outputSema afterMilliseconds:timeout
+	].
+	Processor signal:outputSema onOutput:fd.
+	Processor activeProcess state:#ioWait.
+	outputSema wait.
+	canWrite := self canWriteWithoutBlocking.
     ] ifCurtailed:[
-        Processor disableSemaphore:outputSema.
-        wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+	Processor disableSemaphore:outputSema.
+	wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ].
     timeout notNil ifTrue:[
-        Processor disableSemaphore:outputSema.
+	Processor disableSemaphore:outputSema.
     ].
     wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
     ^ canWrite not
@@ -12499,8 +12499,8 @@
     FILE *f = (FILE *)(__externalAddressVal(self));
 
     if (f) {
-        __externalAddressVal(self) = NULL;
-        fclose(f);
+	__externalAddressVal(self) = NULL;
+	fclose(f);
     }
 %}
 
@@ -12511,12 +12511,12 @@
 type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP numLinks:nL
     <resource: #obsolete>
     ^ self basicNew
-        type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP numLinks:nL
+	type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP numLinks:nL
 !
 
 type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT sourcePath:sP targetPath:tP numLinks:nL
     ^ self basicNew
-        type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT sourcePath:sP targetPath:tP numLinks:nL
+	type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT sourcePath:sP targetPath:tP numLinks:nL
 ! !
 
 !UnixOperatingSystem::FileStatusInfo methodsFor:'accessing'!
@@ -12525,8 +12525,8 @@
     "return accessed"
 
     accessed isInteger ifTrue:[
-        "/ lazy time conversion
-        accessed := Timestamp fromOSTime:(accessed * 1000).
+	"/ lazy time conversion
+	accessed := Timestamp fromOSTime:(accessed * 1000).
     ].
     ^ accessed
 !
@@ -12576,8 +12576,8 @@
     "return modified"
 
     modified isInteger ifTrue:[
-        "/ lazy time conversion
-        modified := Timestamp fromOSTime:(modified * 1000).
+	"/ lazy time conversion
+	modified := Timestamp fromOSTime:(modified * 1000).
     ].
     ^ modified
 !
@@ -12600,8 +12600,8 @@
 
 statusChangeTime
     statusChanged isInteger ifTrue:[
-        "/ lazy time conversion
-        statusChanged := Timestamp fromOSTime:(statusChanged * 1000).
+	"/ lazy time conversion
+	statusChanged := Timestamp fromOSTime:(statusChanged * 1000).
     ].
     ^ statusChanged
 !
@@ -12829,9 +12829,9 @@
 
 isSpecialFile
     ^ (type ~~ #directory
-        and:[type ~~ #remoteDirectory
-        and:[type ~~ #regular
-        and:[type ~~ #symbolicLink
+	and:[type ~~ #remoteDirectory
+	and:[type ~~ #regular
+	and:[type ~~ #symbolicLink
     ]]])
 !
 
@@ -12874,8 +12874,8 @@
 
 printOn:aStream
     aStream
-        nextPutAll:'MountInfo for ';
-        nextPutAll:mountPointPath.
+	nextPutAll:'MountInfo for ';
+	nextPutAll:mountPointPath.
 ! !
 
 !UnixOperatingSystem::MountInfo methodsFor:'queries'!
@@ -12893,20 +12893,20 @@
 
     [Instance variables:]
 
-        pid     <Integer>       OS-Process identifier
-
-        status  <Symbol>        either #exit #signal #stop #continue
-
-        code    <Integer>       either exitcode or signalnumber
-
-        core    <Boolean>       true if core has been dumped
+	pid     <Integer>       OS-Process identifier
+
+	status  <Symbol>        either #exit #signal #stop #continue
+
+	code    <Integer>       either exitcode or signalnumber
+
+	core    <Boolean>       true if core has been dumped
 
 
     [author:]
-        Stefan Vogel
+	Stefan Vogel
 
     [see also:]
-        OperatingSystem
+	OperatingSystem
 "
 ! !
 
@@ -13068,15 +13068,15 @@
 
 %{
     if (__isSmallInteger(aNameOrNumber) || aNameOrNumber == nil) {
-        RETURN(aNameOrNumber);
+	RETURN(aNameOrNumber);
     }
 %}.
 
     ProtocolCache notNil ifTrue:[
-        protocolCode := ProtocolCache at:(aNameOrNumber asSymbol) ifAbsent:[].
-        protocolCode notNil ifTrue:[
-            ^ protocolCode.
-        ].
+	protocolCode := ProtocolCache at:(aNameOrNumber asSymbol) ifAbsent:[].
+	protocolCode notNil ifTrue:[
+	    ^ protocolCode.
+	].
     ].
 
 %{
@@ -13084,21 +13084,21 @@
     struct protoent *protoent = 0;
 
     if (__isStringLike(aNameOrNumber)) {
-        protoent = getprotobyname((char *) __stringVal(aNameOrNumber));
-        if (protoent) {
-            protocolCode = __mkSmallInteger(protoent->p_proto);
-            protocolSymbol = __MKSYMBOL(protoent->p_name, 0);
-        }
+	protoent = getprotobyname((char *) __stringVal(aNameOrNumber));
+	if (protoent) {
+	    protocolCode = __mkSmallInteger(protoent->p_proto);
+	    protocolSymbol = __MKSYMBOL(protoent->p_name, 0);
+	}
     }
 #endif /*NO_SOCKET*/
 %}.
 
     protocolSymbol notNil ifTrue:[
-        ProtocolCache isNil ifTrue:[
-            ProtocolCache := IdentityDictionary new.
-        ].
-        "beware of polluting the protocol cache with aliases"
-        ProtocolCache at:protocolSymbol put:protocolCode.
+	ProtocolCache isNil ifTrue:[
+	    ProtocolCache := IdentityDictionary new.
+	].
+	"beware of polluting the protocol cache with aliases"
+	ProtocolCache at:protocolSymbol put:protocolCode.
     ].
     ^ protocolCode
 
@@ -13115,10 +13115,10 @@
     |protocolSymbol|
 
     ProtocolCache notNil ifTrue:[
-        protocolSymbol := ProtocolCache keyAtIdentityValue:anInteger ifAbsent:[].
-        protocolSymbol notNil ifTrue:[
-            ^ protocolSymbol.
-        ].
+	protocolSymbol := ProtocolCache keyAtIdentityValue:anInteger ifAbsent:[].
+	protocolSymbol notNil ifTrue:[
+	    ^ protocolSymbol.
+	].
     ].
 
 %{
@@ -13126,19 +13126,19 @@
     struct protoent *protoent = 0;
 
     if (__isSmallInteger(anInteger)) {
-        protoent = getprotobynumber(__intVal(anInteger));
-        if (protoent) {
-            protocolSymbol = __MKSYMBOL(protoent->p_name, 0);
-        }
+	protoent = getprotobynumber(__intVal(anInteger));
+	if (protoent) {
+	    protocolSymbol = __MKSYMBOL(protoent->p_name, 0);
+	}
     }
 #endif /*NO_SOCKET*/
 %}.
 
     protocolSymbol notNil ifTrue:[
-        ProtocolCache isNil ifTrue:[
-            ProtocolCache := IdentityDictionary new.
-        ].
-        ProtocolCache at:protocolSymbol put:anInteger.
+	ProtocolCache isNil ifTrue:[
+	    ProtocolCache := IdentityDictionary new.
+	].
+	ProtocolCache at:protocolSymbol put:anInteger.
     ].
     ^ protocolSymbol
 
@@ -13171,101 +13171,101 @@
     |result domain type proto encodedHostName|
 
     domainArg notNil ifTrue:[
-        domain := OperatingSystem domainCodeOf:domainArg.
+	domain := OperatingSystem domainCodeOf:domainArg.
     ].
     typeArg notNil ifTrue:[
-        type := OperatingSystem socketTypeCodeOf:typeArg.
+	type := OperatingSystem socketTypeCodeOf:typeArg.
     ].
     protoArg notNil ifTrue:[
-        proto := self protocolCodeOf:protoArg.
+	proto := self protocolCodeOf:protoArg.
     ].
 
     hostName isNil ifTrue:[
-        encodedHostName := nil.
+	encodedHostName := nil.
     ] ifFalse:[
-        encodedHostName := hostName utf8Encoded.
+	encodedHostName := hostName utf8Encoded.
     ].
     (encodedHostName ~~ hostName and:[OperatingSystem getCodeset ~~ #utf8]) ifTrue:[
-        "hostName is not plain ASCII - so this is an IDN domain name. Have to ensure, that the locale is UTF-8.
-         Block interrupt to not affect other ST/X processes while the locale is changed."
-        |interruptsBlocked oldLocale|
-
-        interruptsBlocked := OperatingSystem blockInterrupts.
-        oldLocale := OperatingSystem setLocale:#'LC_CTYPE' to:nil.
-        OperatingSystem setLocale:#'LC_CTYPE' to:'en_US.UTF-8'.
-        result := self primGetAddressInfo:encodedHostName serviceName:serviceName domainCode:domain socketTypeCode:type protocolCode:proto flags:flags.
-        OperatingSystem setLocale:#'LC_CTYPE' to:oldLocale.
-        interruptsBlocked ifFalse:[
-            OperatingSystem unblockInterrupts.
-        ].
+	"hostName is not plain ASCII - so this is an IDN domain name. Have to ensure, that the locale is UTF-8.
+	 Block interrupt to not affect other ST/X processes while the locale is changed."
+	|interruptsBlocked oldLocale|
+
+	interruptsBlocked := OperatingSystem blockInterrupts.
+	oldLocale := OperatingSystem setLocale:#'LC_CTYPE' to:nil.
+	OperatingSystem setLocale:#'LC_CTYPE' to:'en_US.UTF-8'.
+	result := self primGetAddressInfo:encodedHostName serviceName:serviceName domainCode:domain socketTypeCode:type protocolCode:proto flags:flags.
+	OperatingSystem setLocale:#'LC_CTYPE' to:oldLocale.
+	interruptsBlocked ifFalse:[
+	    OperatingSystem unblockInterrupts.
+	].
     ] ifFalse:[
-        result := self primGetAddressInfo:encodedHostName serviceName:serviceName domainCode:domain socketTypeCode:type protocolCode:proto flags:flags.
+	result := self primGetAddressInfo:encodedHostName serviceName:serviceName domainCode:domain socketTypeCode:type protocolCode:proto flags:flags.
     ].
     result isArray ifFalse:[
-        |request|
-        request := SocketAddressInfo new
-            domain:domainArg;
-            type:typeArg;
-            protocol:protoArg;
-            canonicalName:hostName;
-            serviceName:serviceName.
-        ^ (HostNameLookupError new
-                parameter:result;
-                messageText:' - ', (result printString);
-                request:request) raiseRequest.
+	|request|
+	request := SocketAddressInfo new
+	    domain:domainArg;
+	    type:typeArg;
+	    protocol:protoArg;
+	    canonicalName:hostName;
+	    serviceName:serviceName.
+	^ (HostNameLookupError new
+		parameter:result;
+		messageText:' - ', (result printString);
+		request:request) raiseRequest.
     ].
     1 to:result size do:[:i |
-        |entry dom info|
-
-        entry := result at:i.
-
-        info := SocketAddressInfo new.
-        info
-            flags:(entry at:1);
-            domain:(dom := OperatingSystem domainSymbolOf:(entry at:2));
-            type:(OperatingSystem socketTypeSymbolOf:(entry at:3));
-            protocol:(self protocolSymbolOf:(entry at:4));
-            socketAddress:((SocketAddress newDomain:dom) fromBytes:(entry at:5));
-            canonicalName:(entry at:6).
-
-        result at:i put:info.
+	|entry dom info|
+
+	entry := result at:i.
+
+	info := SocketAddressInfo new.
+	info
+	    flags:(entry at:1);
+	    domain:(dom := OperatingSystem domainSymbolOf:(entry at:2));
+	    type:(OperatingSystem socketTypeSymbolOf:(entry at:3));
+	    protocol:(self protocolSymbolOf:(entry at:4));
+	    socketAddress:((SocketAddress newDomain:dom) fromBytes:(entry at:5));
+	    canonicalName:(entry at:6).
+
+	result at:i put:info.
     ].
     ^ result.
 
 
     "
      self getAddressInfo:'localhost' serviceName:nil
-            domain:nil type:nil protocol:nil flags:nil
+	    domain:nil type:nil protocol:nil flags:nil
      self getAddressInfo:nil serviceName:22
-            domain:nil type:nil protocol:nil flags:nil
+	    domain:nil type:nil protocol:nil flags:nil
      self getAddressInfo:'' serviceName:22
-            domain:nil type:nil protocol:nil flags:nil
+	    domain:nil type:nil protocol:nil flags:nil
      self getAddressInfo:'localhost' serviceName:nil
-            domain:nil type:#stream protocol:nil flags:nil
+	    domain:nil type:#stream protocol:nil flags:nil
      self getAddressInfo:'localhost' serviceName:nil
-            domain:#inet type:#stream protocol:#tcp flags:nil
+	    domain:#inet type:#stream protocol:#tcp flags:nil
      self getAddressInfo:'blurb.exept.de' serviceName:nil
-            domain:#inet type:nil protocol:nil flags:nil
+	    domain:#inet type:nil protocol:nil flags:nil
      self getAddressInfo:'1.2.3.4' serviceName:'bla'
-            domain:#inet type:nil protocol:nil flags:nil
+	    domain:#inet type:nil protocol:nil flags:nil
      self getAddressInfo:'localhost' serviceName:'echo'
-            domain:#inet type:nil protocol:nil flags:nil
+	    domain:#inet type:nil protocol:nil flags:nil
      self getAddressInfo:nil serviceName:'echo'
-            domain:#inet type:nil protocol:nil flags:nil
+	    domain:#inet type:nil protocol:nil flags:nil
      self getAddressInfo:nil serviceName:nil
-            domain:#inet type:nil protocol:nil flags:nil
+	    domain:#inet type:nil protocol:nil flags:nil
      self getAddressInfo:'www.google.de' serviceName:80
-            domain:nil type:nil protocol:nil flags:nil
+	    domain:nil type:nil protocol:nil flags:nil
      self getAddressInfo:'www.exept.de' serviceName:nil
-            domain:nil type:nil protocol:nil flags:nil
+	    domain:nil type:nil protocol:nil flags:nil
      self getAddressInfo:'www.exept.de' serviceName:'https'
-            domain:#'AF_INET' type:nil protocol:nil flags:nil
+	    domain:#'AF_INET' type:nil protocol:nil flags:nil
      self getAddressInfo:'www.exept.de' serviceName:nil
-            domain:#'AF_INET6' type:nil protocol:nil flags:nil
+	    domain:#'AF_INET6' type:nil protocol:nil flags:nil
      self getAddressInfo:'www.baden-württemberg.de' serviceName:nil
-            domain:#'AF_INET' type:#stream protocol:nil flags:nil
+	    domain:#'AF_INET' type:#stream protocol:nil flags:nil
      self getAddressInfo:'www.baden-württemberg.de' serviceName:nil
-            domain:#'AF_INET6' type:#stream protocol:nil flags:nil
+	    domain:#'AF_INET6' type:#stream protocol:nil flags:nil
     "
 !
 
@@ -13297,20 +13297,20 @@
     int nInstBytes, sockAddrSize;
 
     if (wantHostName == true) {
-        hp = host;
-        hsz = sizeof(host);
+	hp = host;
+	hsz = sizeof(host);
     }
     if (wantServiceName == true) {
-        sp = service;
-        ssz = sizeof(service);
+	sp = service;
+	ssz = sizeof(service);
     }
     if (hp == 0 && sp == 0) {
-        error = @symbol(badArgument);
-        goto err;
+	error = @symbol(badArgument);
+	goto err;
     }
     if (!__isBytes(socketAddress)) {
-        error = @symbol(badArgument1);
-        goto err;
+	error = @symbol(badArgument1);
+	goto err;
     }
 
     nInstBytes = __OBJS2BYTES__(__intVal(__ClassInstPtr(__qClass(socketAddress))->c_ninstvars));
@@ -13318,187 +13318,187 @@
     sockAddrSize -= nInstBytes;
 
     if (!__isSmallInteger(flags)) {
-        error = @symbol(badArgument5);
-        goto err;
+	error = @symbol(badArgument5);
+	goto err;
     }
     __flags = __intVal(flags);
 
 #if defined(NI_NUMERICHOST)
     if (useDatagram == true) {
-        __flags |= NI_DGRAM;
+	__flags |= NI_DGRAM;
     }
 
     {
-        bp = (char *)(__byteArrayVal(socketAddress));
-        bp += nInstBytes;
-        __BEGIN_INTERRUPTABLE__
-        ret = getnameinfo((struct sockaddr *)bp, sockAddrSize,
-                          hp, hsz, sp, ssz, __flags);
-        __END_INTERRUPTABLE__
+	bp = (char *)(__byteArrayVal(socketAddress));
+	bp += nInstBytes;
+	__BEGIN_INTERRUPTABLE__
+	ret = getnameinfo((struct sockaddr *)bp, sockAddrSize,
+			  hp, hsz, sp, ssz, __flags);
+	__END_INTERRUPTABLE__
     } while (ret == EAI_SYSTEM && errno == EINTR);
     if (ret != 0) {
-        switch (ret) {
-        case EAI_FAMILY:
-            error = @symbol(badProtocol);
-            break;
-        case EAI_SOCKTYPE:
-            error = @symbol(badSocketType);
-            break;
-        case EAI_BADFLAGS:
-            error = @symbol(badFlags);
-            break;
-        case EAI_NONAME:
-            error = @symbol(unknownHost);
-            break;
-        case EAI_SERVICE:
-            error = @symbol(unknownService);
-            break;
+	switch (ret) {
+	case EAI_FAMILY:
+	    error = @symbol(badProtocol);
+	    break;
+	case EAI_SOCKTYPE:
+	    error = @symbol(badSocketType);
+	    break;
+	case EAI_BADFLAGS:
+	    error = @symbol(badFlags);
+	    break;
+	case EAI_NONAME:
+	    error = @symbol(unknownHost);
+	    break;
+	case EAI_SERVICE:
+	    error = @symbol(unknownService);
+	    break;
 #ifdef EAI_ADDRFAMILY
-        case EAI_ADDRFAMILY :
-            error = @symbol(unknownHostForProtocol);
-            break;
+	case EAI_ADDRFAMILY :
+	    error = @symbol(unknownHostForProtocol);
+	    break;
 #endif
 #ifdef EAI_NODATA
-        case EAI_NODATA:
-            error = @symbol(noAddress);
-            break;
-#endif
-        case EAI_MEMORY:
-            error = @symbol(allocationFailure);
-            break;
-        case EAI_FAIL:
-            error = @symbol(permanentFailure);
-            break;
-        case EAI_AGAIN:
-            error = @symbol(tryAgain);
-            break;
-        case EAI_SYSTEM:
-            error = @symbol(systemError);
-            break;
-        default:
-            error = @symbol(unknownError);
-        }
-        errorString = __MKSTRING(gai_strerror(ret));
-        goto err;
+	case EAI_NODATA:
+	    error = @symbol(noAddress);
+	    break;
+#endif
+	case EAI_MEMORY:
+	    error = @symbol(allocationFailure);
+	    break;
+	case EAI_FAIL:
+	    error = @symbol(permanentFailure);
+	    break;
+	case EAI_AGAIN:
+	    error = @symbol(tryAgain);
+	    break;
+	case EAI_SYSTEM:
+	    error = @symbol(systemError);
+	    break;
+	default:
+	    error = @symbol(unknownError);
+	}
+	errorString = __MKSTRING(gai_strerror(ret));
+	goto err;
     }
 # else /* ! NI_NUMERICHOST */
     {
-        /*
-         * Do it using gethostbyaddr()
-         */
-        struct sockaddr_in *sa;
-
-        if (sockAddrSize < sizeof(*sa)) {
-            error = @symbol(badArgument1);
-            goto err;
-        }
-        bp = (char *)(__byteArrayVal(socketAddress));
-        bp += nInstBytes;
-        sa = (struct sockaddr_in *)bp;
-
-        if (sp) {
-            struct servent *servp;
-            char *__proto = 0;
-
-            __proto = (useDatagram == true ? "udp" : "tcp");
-
-            servp = getservbyport(sa->sin_port, __proto);
-            if (servp) {
-                sp = servp->s_name;
-            }
-        }
-        if (hp) {
-            struct hostent *hostp;
+	/*
+	 * Do it using gethostbyaddr()
+	 */
+	struct sockaddr_in *sa;
+
+	if (sockAddrSize < sizeof(*sa)) {
+	    error = @symbol(badArgument1);
+	    goto err;
+	}
+	bp = (char *)(__byteArrayVal(socketAddress));
+	bp += nInstBytes;
+	sa = (struct sockaddr_in *)bp;
+
+	if (sp) {
+	    struct servent *servp;
+	    char *__proto = 0;
+
+	    __proto = (useDatagram == true ? "udp" : "tcp");
+
+	    servp = getservbyport(sa->sin_port, __proto);
+	    if (servp) {
+		sp = servp->s_name;
+	    }
+	}
+	if (hp) {
+	    struct hostent *hostp;
 #  ifdef USE_H_ERRNO
-            do {
-                bp = (char *)(__byteArrayVal(socketAddress));
-                bp += nInstBytes;
-                sa = (struct sockaddr_in *)bp;
-
-                /* __BEGIN_INTERRUPTABLE__ is dangerous, because gethostbyname uses a static data area
-                 */
-                hostp = gethostbyaddr((char *)&sa->sin_addr, sockAddrSize, sa->sin_family);
-                /* __END_INTERRUPTABLE__ */
-            } while ((hostp == NULL)
-                      && ((h_errno == TRY_AGAIN)
-                          || errno == EINTR
+	    do {
+		bp = (char *)(__byteArrayVal(socketAddress));
+		bp += nInstBytes;
+		sa = (struct sockaddr_in *)bp;
+
+		/* __BEGIN_INTERRUPTABLE__ is dangerous, because gethostbyname uses a static data area
+		 */
+		hostp = gethostbyaddr((char *)&sa->sin_addr, sockAddrSize, sa->sin_family);
+		/* __END_INTERRUPTABLE__ */
+	    } while ((hostp == NULL)
+		      && ((h_errno == TRY_AGAIN)
+			  || errno == EINTR
 #   ifdef IRIX5_3
-                          || (errno == ECONNREFUSED)
+			  || (errno == ECONNREFUSED)
 #   endif
-                         )
-            );
-            if (hostp == 0) {
-                switch (h_errno) {
-                case HOST_NOT_FOUND:
-                    errorString = @symbol(unknownHost);
-                    break;
-                case NO_ADDRESS:
-                    errorString = @symbol(noAddress);
-                    break;
-                case NO_RECOVERY:
-                    errorString = @symbol(permanentFailure);
-                    break;
-                case TRY_AGAIN:
-                    errorString = @symbol(tryAgain);
-                    break;
-                default:
-                    errorString = @symbol(unknownError);
-                    break;
-                }
-                error = __mkSmallInteger(h_errno);
-                goto err;
-            }
+			 )
+	    );
+	    if (hostp == 0) {
+		switch (h_errno) {
+		case HOST_NOT_FOUND:
+		    errorString = @symbol(unknownHost);
+		    break;
+		case NO_ADDRESS:
+		    errorString = @symbol(noAddress);
+		    break;
+		case NO_RECOVERY:
+		    errorString = @symbol(permanentFailure);
+		    break;
+		case TRY_AGAIN:
+		    errorString = @symbol(tryAgain);
+		    break;
+		default:
+		    errorString = @symbol(unknownError);
+		    break;
+		}
+		error = __mkSmallInteger(h_errno);
+		goto err;
+	    }
 #  else /* !USE_H_ERRNO */
-            hostp = gethostbyaddr(sa->sin_addr, sockAddrSize, sa->sin_family);
-            if (hostp == 0) {
-                errorString = @symbol(unknownHost);
-                error = __mkSmallInteger(-1);
-                goto err;
-            }
+	    hostp = gethostbyaddr(sa->sin_addr, sockAddrSize, sa->sin_family);
+	    if (hostp == 0) {
+		errorString = @symbol(unknownHost);
+		error = __mkSmallInteger(-1);
+		goto err;
+	    }
 #  endif /* !USE_H_ERRNO*/
-            hp = hostp->h_name;
-        }
+	    hp = hostp->h_name;
+	}
     }
 # endif /* ! NI_NUMERICHOST */
 
     if (hp)
-        hostName = __MKSTRING(hp);
+	hostName = __MKSTRING(hp);
     if (sp)
-        serviceName = __MKSTRING(sp);
+	serviceName = __MKSTRING(sp);
 err:;
 #else
     error = @symbol(notImplemented);
 #endif
 %}.
     error notNil ifTrue:[
-        ^ (HostAddressLookupError new
-                parameter:error;
-                messageText:' - ', errorString;
-                request:thisContext message) raiseRequest.
+	^ (HostAddressLookupError new
+		parameter:error;
+		messageText:' - ', errorString;
+		request:thisContext message) raiseRequest.
     ].
 
     ^ Array with:hostName with:serviceName
 
     "
      self getNameInfo:
-        (self getAddressInfo:'localhost' serviceName:'echo'
-                domain:#inet type:#stream protocol:nil flags:nil) first socketAddress
-         wantHostName:true wantServiceName:true datagram:false flags:0
+	(self getAddressInfo:'localhost' serviceName:'echo'
+		domain:#inet type:#stream protocol:nil flags:nil) first socketAddress
+	 wantHostName:true wantServiceName:true datagram:false flags:0
 
      self getNameInfo:
-        (self getAddressInfo:'exept.de' serviceName:'echo'
-                domain:#inet type:#stream protocol:nil flags:nil) first socketAddress
-         wantHostName:true wantServiceName:true datagram:false flags:0
+	(self getAddressInfo:'exept.de' serviceName:'echo'
+		domain:#inet type:#stream protocol:nil flags:nil) first socketAddress
+	 wantHostName:true wantServiceName:true datagram:false flags:0
 
      self getNameInfo:
-        (self getAddressInfo:'217.172.183.25' serviceName:'22'
-                domain:#inet type:#stream protocol:nil flags:nil) first socketAddress
-         wantHostName:true wantServiceName:true datagram:false flags:0
+	(self getAddressInfo:'217.172.183.25' serviceName:'22'
+		domain:#inet type:#stream protocol:nil flags:nil) first socketAddress
+	 wantHostName:true wantServiceName:true datagram:false flags:0
 
      self getNameInfo:
-        (self getAddressInfo:'1.2.3.4' serviceName:'22'
-                domain:#inet type:#stream protocol:nil flags:nil) first socketAddress
-         wantHostName:true wantServiceName:true datagram:false flags:0
+	(self getAddressInfo:'1.2.3.4' serviceName:'22'
+		domain:#inet type:#stream protocol:nil flags:nil) first socketAddress
+	 wantHostName:true wantServiceName:true datagram:false flags:0
     "
 !
 
@@ -13520,23 +13520,23 @@
     int ret, cnt = 0;
 
     if (hostName == nil) {
-        __hostName = 0;
+	__hostName = 0;
     } else if (__isStringLike(hostName)) {
-        __hostName = __stringVal(hostName);
+	__hostName = __stringVal(hostName);
     } else {
-        error = @symbol(badArgument1);
-        goto out;
+	error = @symbol(badArgument1);
+	goto out;
     }
     if (serviceName == nil) {
-        __serviceName = 0;
+	__serviceName = 0;
     } else if (__isStringLike(serviceName)) {
-        __serviceName = __stringVal(serviceName);
+	__serviceName = __stringVal(serviceName);
     } else if (__isSmallInteger(serviceName)) {
-        __serviceName = intServiceName;
-        snprintf(intServiceName, sizeof(intServiceName), "%d", (int)(__intVal(serviceName)));
+	__serviceName = intServiceName;
+	snprintf(intServiceName, sizeof(intServiceName), "%d", (int)(__intVal(serviceName)));
     } else {
-        error = @symbol(badArgument2);
-        goto out;
+	error = @symbol(badArgument2);
+	goto out;
     }
 
 {
@@ -13548,130 +13548,130 @@
     struct addrinfo *info = NULL, *infop;
 
     hints.ai_flags = AI_ADDRCONFIG      // only return IPv6 or IPv4 addresses if there is at least on interface where this address type is configured
-                    | AI_V4MAPPED;
+		    | AI_V4MAPPED;
     if (__isSmallInteger(serviceName))
-        hints.ai_flags |= AI_NUMERICSERV;
+	hints.ai_flags |= AI_NUMERICSERV;
 
     if (__hostName && __stringSize(hostName) == 0) {
-        // empty string, this is a listening host - bound to INADDR_ANY
-        __hostName = 0;
-        hints.ai_flags |= AI_PASSIVE;
+	// empty string, this is a listening host - bound to INADDR_ANY
+	__hostName = 0;
+	hints.ai_flags |= AI_PASSIVE;
     }
 
 #if defined(AI_IDN)
     hints.ai_flags |= AI_IDN | AI_CANONIDN;     // map non-ascii domain names to IDN format
 #endif
     if (__isSmallInteger(domain))
-        hints.ai_family = __intVal(domain);
+	hints.ai_family = __intVal(domain);
     if (__isSmallInteger(type))
-        hints.ai_socktype = __intVal(type);
+	hints.ai_socktype = __intVal(type);
     if (__isSmallInteger(proto))
-        hints.ai_protocol = __intVal(proto);
+	hints.ai_protocol = __intVal(proto);
     if (__isSmallInteger(flags))
-        hints.ai_flags |= __intVal(flags);
+	hints.ai_flags |= __intVal(flags);
 
     do {
-        /* reload */
-        if (__hostName) {
-            __hostName = __stringVal(hostName);
-        }
-        if (__isStringLike(serviceName)) {
-            __serviceName = __stringVal(serviceName);
-        }
+	/* reload */
+	if (__hostName) {
+	    __hostName = __stringVal(hostName);
+	}
+	if (__isStringLike(serviceName)) {
+	    __serviceName = __stringVal(serviceName);
+	}
 
 //        __BEGIN_INTERRUPTABLE__
-        ret = getaddrinfo(__hostName, __serviceName, &hints, &info);
+	ret = getaddrinfo(__hostName, __serviceName, &hints, &info);
 //        __END_INTERRUPTABLE__
     } while (ret == EAI_SYSTEM && errno == EINTR);
     if (ret != 0) {
-        switch (ret) {
-        case EAI_FAMILY:
-            error = @symbol(badProtocol);
-            break;
-        case EAI_SOCKTYPE:
-            error = @symbol(badSocketType);
-            break;
-        case EAI_BADFLAGS:
-            error = @symbol(badFlags);
-            break;
-        case EAI_NONAME:
-            error = @symbol(unknownHost);
-            break;
-        case EAI_SERVICE:
-            error = @symbol(unknownService);
-            break;
+	switch (ret) {
+	case EAI_FAMILY:
+	    error = @symbol(badProtocol);
+	    break;
+	case EAI_SOCKTYPE:
+	    error = @symbol(badSocketType);
+	    break;
+	case EAI_BADFLAGS:
+	    error = @symbol(badFlags);
+	    break;
+	case EAI_NONAME:
+	    error = @symbol(unknownHost);
+	    break;
+	case EAI_SERVICE:
+	    error = @symbol(unknownService);
+	    break;
 #ifdef EAI_ADDRFAMILY
-        case EAI_ADDRFAMILY :
-            error = @symbol(unknownHostForProtocol);
-            break;
+	case EAI_ADDRFAMILY :
+	    error = @symbol(unknownHostForProtocol);
+	    break;
 #endif
 #ifdef EAI_NODATA
-        case EAI_NODATA:
-            error = @symbol(noAddress);
-            break;
-#endif
-        case EAI_MEMORY:
-            error = @symbol(allocationFailure);
-            break;
-        case EAI_FAIL:
-            error = @symbol(permanentFailure);
-            break;
-        case EAI_AGAIN:
-            error = @symbol(tryAgain);
-            break;
-        case EAI_SYSTEM:
-            error = @symbol(systemError);
-            break;
-        default:
-            error = @symbol(unknownError);
-        }
-        errorString = __MKSTRING(gai_strerror(ret));
-        goto ai_out;
+	case EAI_NODATA:
+	    error = @symbol(noAddress);
+	    break;
+#endif
+	case EAI_MEMORY:
+	    error = @symbol(allocationFailure);
+	    break;
+	case EAI_FAIL:
+	    error = @symbol(permanentFailure);
+	    break;
+	case EAI_AGAIN:
+	    error = @symbol(tryAgain);
+	    break;
+	case EAI_SYSTEM:
+	    error = @symbol(systemError);
+	    break;
+	default:
+	    error = @symbol(unknownError);
+	}
+	errorString = __MKSTRING(gai_strerror(ret));
+	goto ai_out;
     }
     for (cnt=0, infop=info; infop; infop=infop->ai_next)
-        cnt++;
+	cnt++;
 
     result = __ARRAY_NEW_INT(cnt);
     if (result == nil) {
-        error = @symbol(allocationFailure);
-        goto ai_out;
+	error = @symbol(allocationFailure);
+	goto ai_out;
     }
     for (infop=info, cnt=0; infop; infop=infop->ai_next, cnt++) {
-        OBJ o, resp;
-
-        resp = __ARRAY_NEW_INT(6);
-        if (resp == nil) {
-            error = @symbol(allocationFailure);
-            goto ai_out;
-        }
-
-        __ArrayInstPtr(result)->a_element[cnt] = resp; __STORE(result, resp);
-
-        __ArrayInstPtr(resp)->a_element[0] = __mkSmallInteger(infop->ai_flags);
-        __ArrayInstPtr(resp)->a_element[1] = __mkSmallInteger(infop->ai_family);
-        __ArrayInstPtr(resp)->a_element[2] = __mkSmallInteger(infop->ai_socktype);
-        __ArrayInstPtr(resp)->a_element[3] = __mkSmallInteger(infop->ai_protocol);
-
-        __PROTECT__(resp);
-        o = __BYTEARRAY_NEW_INT(infop->ai_addrlen);
-        __UNPROTECT__(resp);
-        if (o == nil) {
-            error = @symbol(allocationFailure);
-            goto ai_out;
-        }
-        memcpy(__byteArrayVal(o), infop->ai_addr, infop->ai_addrlen);
+	OBJ o, resp;
+
+	resp = __ARRAY_NEW_INT(6);
+	if (resp == nil) {
+	    error = @symbol(allocationFailure);
+	    goto ai_out;
+	}
+
+	__ArrayInstPtr(result)->a_element[cnt] = resp; __STORE(result, resp);
+
+	__ArrayInstPtr(resp)->a_element[0] = __mkSmallInteger(infop->ai_flags);
+	__ArrayInstPtr(resp)->a_element[1] = __mkSmallInteger(infop->ai_family);
+	__ArrayInstPtr(resp)->a_element[2] = __mkSmallInteger(infop->ai_socktype);
+	__ArrayInstPtr(resp)->a_element[3] = __mkSmallInteger(infop->ai_protocol);
+
+	__PROTECT__(resp);
+	o = __BYTEARRAY_NEW_INT(infop->ai_addrlen);
+	__UNPROTECT__(resp);
+	if (o == nil) {
+	    error = @symbol(allocationFailure);
+	    goto ai_out;
+	}
+	memcpy(__byteArrayVal(o), infop->ai_addr, infop->ai_addrlen);
        __ArrayInstPtr(resp)->a_element[4] = o; __STORE(resp, o);
 
-        if (infop->ai_canonname) {
-            __PROTECT__(resp);
-            o = __MKSTRING(infop->ai_canonname);
-            __UNPROTECT__(resp);
-            if (o == nil) {
-                error = @symbol(allocationFailure);
-                goto ai_out;
-            }
-            __ArrayInstPtr(resp)->a_element[5] = o; __STORE(resp, o);
-        }
+	if (infop->ai_canonname) {
+	    __PROTECT__(resp);
+	    o = __MKSTRING(infop->ai_canonname);
+	    __UNPROTECT__(resp);
+	    if (o == nil) {
+		error = @symbol(allocationFailure);
+		goto ai_out;
+	    }
+	    __ArrayInstPtr(resp)->a_element[5] = o; __STORE(resp, o);
+	}
     }
 
 ai_out:
@@ -13688,136 +13688,136 @@
     int i;
 
     if (__serviceName) {
-        struct servent *sp;
-        char *__proto = 0;
-
-        if (__isStringLike(protoArg))
-            __proto = __stringVal(protoArg);
-
-        sp = getservbyname(__serviceName, __proto);
-        if (sp == NULL) {
-            errorString = @symbol(unknownService);
-            error = __mkSmallInteger(-3);
-            goto out;
-        }
-        port = sp->s_port;
+	struct servent *sp;
+	char *__proto = 0;
+
+	if (__isStringLike(protoArg))
+	    __proto = __stringVal(protoArg);
+
+	sp = getservbyname(__serviceName, __proto);
+	if (sp == NULL) {
+	    errorString = @symbol(unknownService);
+	    error = __mkSmallInteger(-3);
+	    goto out;
+	}
+	port = sp->s_port;
     }
 
     if (__hostName) {
 #  ifdef USE_H_ERRNO
-        do {
-            if (hostName == nil) {
-                __hostName = 0;
-            } else if (__isStringLike(hostName)) {
-                __hostName = __stringVal(hostName);
-            }
-            /* __BEGIN_INTERRUPTABLE__ is dangerous, because gethostbyname
-             * uses a static data area
-             */
-            __BEGIN_INTERRUPTABLE__
-            hp = gethostbyname(__hostName);
-            __END_INTERRUPTABLE__
-        } while ((hp == NULL)
-                  && (
-                        (h_errno == TRY_AGAIN)
-                      || errno == EINTR
+	do {
+	    if (hostName == nil) {
+		__hostName = 0;
+	    } else if (__isStringLike(hostName)) {
+		__hostName = __stringVal(hostName);
+	    }
+	    /* __BEGIN_INTERRUPTABLE__ is dangerous, because gethostbyname
+	     * uses a static data area
+	     */
+	    __BEGIN_INTERRUPTABLE__
+	    hp = gethostbyname(__hostName);
+	    __END_INTERRUPTABLE__
+	} while ((hp == NULL)
+		  && (
+			(h_errno == TRY_AGAIN)
+		      || errno == EINTR
 #   ifdef IRIX5_3
-                      || (errno == ECONNREFUSED)
+		      || (errno == ECONNREFUSED)
 #   endif
-                     )
-        );
-        if (hp == 0) {
-            switch (h_errno) {
-            case HOST_NOT_FOUND:
-                errorString = @symbol(unknownHost);
-                break;
-            case NO_ADDRESS:
-                errorString = @symbol(noAddress);
-                break;
-            case NO_RECOVERY:
-                errorString = @symbol(permanentFailure);
-                break;
-            case TRY_AGAIN:
-                errorString = @symbol(tryAgain);
-                break;
-            default:
-                errorString = @symbol(unknownError);
-                break;
-            }
-            error = __mkSmallInteger(h_errno);
-            goto out;
-        }
+		     )
+	);
+	if (hp == 0) {
+	    switch (h_errno) {
+	    case HOST_NOT_FOUND:
+		errorString = @symbol(unknownHost);
+		break;
+	    case NO_ADDRESS:
+		errorString = @symbol(noAddress);
+		break;
+	    case NO_RECOVERY:
+		errorString = @symbol(permanentFailure);
+		break;
+	    case TRY_AGAIN:
+		errorString = @symbol(tryAgain);
+		break;
+	    default:
+		errorString = @symbol(unknownError);
+		break;
+	    }
+	    error = __mkSmallInteger(h_errno);
+	    goto out;
+	}
 #  else /* !USE_H_ERRNO */
-        hp = gethostbyname(__hostName);
-        if (hp == 0) {
-            errorString = @symbol(unknownHost);
-            error = __mkSmallInteger(-1);
-            goto out;
-        }
+	hp = gethostbyname(__hostName);
+	if (hp == 0) {
+	    errorString = @symbol(unknownHost);
+	    error = __mkSmallInteger(-1);
+	    goto out;
+	}
 #  endif /* !USE_H_ERRNO*/
 
-        if (__isSmallInteger(domain) && hp->h_addrtype != __smallIntegerVal(domain)) {
-            errorString = @symbol(unknownHost);
-            error = __mkSmallInteger(-2);
-            goto out;
-        }
-
-        for (cnt = 0, addrpp = hp->h_addr_list; *addrpp; addrpp++)
-            cnt++;
-        addrpp = hp->h_addr_list;
+	if (__isSmallInteger(domain) && hp->h_addrtype != __smallIntegerVal(domain)) {
+	    errorString = @symbol(unknownHost);
+	    error = __mkSmallInteger(-2);
+	    goto out;
+	}
+
+	for (cnt = 0, addrpp = hp->h_addr_list; *addrpp; addrpp++)
+	    cnt++;
+	addrpp = hp->h_addr_list;
     } else {
-        cnt = 1;
+	cnt = 1;
     }
 
     result = __ARRAY_NEW_INT(cnt);
     if (result == nil) {
-        error = @symbol(allocationFailure);
-        goto out;
+	error = @symbol(allocationFailure);
+	goto out;
     }
 
     for (i = 0; i < cnt; i++) {
-        OBJ o, resp;
-        struct sockaddr_in *sa;
-
-        resp = __ARRAY_NEW_INT(6);
-        if (resp == nil) {
-            error = @symbol(allocationFailure);
-            goto out;
-        }
-
-        __ArrayInstPtr(result)->a_element[i] = resp; __STORE(result, resp);
-        __ArrayInstPtr(resp)->a_element[0] = __mkSmallInteger(0);
-        __ArrayInstPtr(resp)->a_element[2] = type; __STORE(result, type);
-        __ArrayInstPtr(resp)->a_element[3] = proto; __STORE(result, proto);
-        __PROTECT__(resp);
-        o = __BYTEARRAY_NEW_INT(sizeof(*sa));
-        __UNPROTECT__(resp);
-        if (o == nil) {
-            error = @symbol(allocationFailure);
-            goto out;
-        }
-        __ArrayInstPtr(resp)->a_element[4] = o; __STORE(resp, o);
-        sa = (struct sockaddr_in *)__byteArrayVal(o);
-        sa->sin_port = port;
-
-        if (__hostName) {
-            sa->sin_family = hp->h_addrtype;
-            memcpy(&sa->sin_addr, *addrpp, hp->h_length);
-            __ArrayInstPtr(resp)->a_element[1] = __mkSmallInteger(hp->h_addrtype);
-            if (hp->h_name) {
-                __PROTECT__(resp);
-                o = __MKSTRING(hp->h_name);
-                __UNPROTECT__(resp);
-                if (o == nil) {
-                    error = @symbol(allocationFailure);
-                    goto out;
-                }
-                __ArrayInstPtr(resp)->a_element[5] = o; __STORE(resp, o);
-            }
-            addrpp++;
-        } else{
-            __ArrayInstPtr(resp)->a_element[1] = domain; __STORE(resp, domain);
-        }
+	OBJ o, resp;
+	struct sockaddr_in *sa;
+
+	resp = __ARRAY_NEW_INT(6);
+	if (resp == nil) {
+	    error = @symbol(allocationFailure);
+	    goto out;
+	}
+
+	__ArrayInstPtr(result)->a_element[i] = resp; __STORE(result, resp);
+	__ArrayInstPtr(resp)->a_element[0] = __mkSmallInteger(0);
+	__ArrayInstPtr(resp)->a_element[2] = type; __STORE(result, type);
+	__ArrayInstPtr(resp)->a_element[3] = proto; __STORE(result, proto);
+	__PROTECT__(resp);
+	o = __BYTEARRAY_NEW_INT(sizeof(*sa));
+	__UNPROTECT__(resp);
+	if (o == nil) {
+	    error = @symbol(allocationFailure);
+	    goto out;
+	}
+	__ArrayInstPtr(resp)->a_element[4] = o; __STORE(resp, o);
+	sa = (struct sockaddr_in *)__byteArrayVal(o);
+	sa->sin_port = port;
+
+	if (__hostName) {
+	    sa->sin_family = hp->h_addrtype;
+	    memcpy(&sa->sin_addr, *addrpp, hp->h_length);
+	    __ArrayInstPtr(resp)->a_element[1] = __mkSmallInteger(hp->h_addrtype);
+	    if (hp->h_name) {
+		__PROTECT__(resp);
+		o = __MKSTRING(hp->h_name);
+		__UNPROTECT__(resp);
+		if (o == nil) {
+		    error = @symbol(allocationFailure);
+		    goto out;
+		}
+		__ArrayInstPtr(resp)->a_element[5] = o; __STORE(resp, o);
+	    }
+	    addrpp++;
+	} else{
+	    __ArrayInstPtr(resp)->a_element[1] = domain; __STORE(resp, domain);
+	}
     }
 # endif /* ! AI_NUMERICHOST */
 }
@@ -13827,10 +13827,10 @@
 out:;
 %}.
     error notNil ifTrue:[
-        errorString notNil ifTrue:[
-            ^ errorString.
-        ].
-        ^ error.
+	errorString notNil ifTrue:[
+	    ^ errorString.
+	].
+	^ error.
     ].
     ^ result.
 ! !
@@ -13853,49 +13853,49 @@
     int alen;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (peerOrNil != nil &&
-        (!__isNonNilObject(peerOrNil) ||
-         (__intVal(__ClassInstPtr(__qClass(peerOrNil))->c_flags) & ARRAYMASK) != BYTEARRAY)) {
-        error = @symbol(badArgument2);
-        goto err;
+	(!__isNonNilObject(peerOrNil) ||
+	 (__intVal(__ClassInstPtr(__qClass(peerOrNil))->c_flags) & ARRAYMASK) != BYTEARRAY)) {
+	error = @symbol(badArgument2);
+	goto err;
     }
 
     sock = __smallIntegerVal(__INST(fd));
 
 again:
     if (peerOrNil == nil) {
-        alen = 0;
-        sap = 0;
+	alen = 0;
+	sap = 0;
     } else {
-        alen =  __byteArraySize(peerOrNil);
-        sap = (struct sockaddr *)__byteArrayVal(peerOrNil);
+	alen =  __byteArraySize(peerOrNil);
+	sap = (struct sockaddr *)__byteArrayVal(peerOrNil);
     }
     newSock = accept(sock, sap, &alen);
     if (newSock < 0) {
-        switch (errno) {
-        case EINTR:
-            __HANDLE_INTERRUPTS__;
-            goto again;
+	switch (errno) {
+	case EINTR:
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
 
 #ifdef EWOULDBLOCK
-        case EWOULDBLOCK:
+	case EWOULDBLOCK:
 # if defined(EAGAIN) && (EAGAIN != EWOULDBLOCK)
-        case EAGAIN:
+	case EAGAIN:
 # endif
 #else
 # ifdef EAGAIN
-        case EAGAIN:
-# endif
-#endif
-            RETURN(nil);
-
-        default:
-            error = __mkSmallInteger(errno);
-            goto err;
-        }
+	case EAGAIN:
+# endif
+#endif
+	    RETURN(nil);
+
+	default:
+	    error = __mkSmallInteger(errno);
+	    goto err;
+	}
     }
     newFd = __mkSmallInteger(newSock);
 
@@ -13903,7 +13903,7 @@
 #endif /* not NO_SOCKET */
 %}.
     error notNil ifTrue:[
-        ^ self error:error.
+	^ self error:error.
     ].
     ^ self class for:newFd
 ! !
@@ -13923,13 +13923,13 @@
     int ret;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__isNonNilObject(socketAddress) ||
-        (__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
-        error = @symbol(badArgument1);
-        goto err;
+	(__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
+	error = @symbol(badArgument1);
+	goto err;
     }
     sockaddr_size = __byteArraySize(socketAddress);
     sock = __smallIntegerVal(__INST(fd));
@@ -13937,27 +13937,27 @@
 again:
     ret = bind(sock, (struct sockaddr *)__byteArrayVal(socketAddress), sockaddr_size);
     if (ret < 0) {
-        if (errno == EINTR) {
-            __HANDLE_INTERRUPTS__;
-            goto again;
-        } else {
-            error = __mkSmallInteger(errno);
-            goto err;
-        }
+	if (errno == EINTR) {
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
+	} else {
+	    error = __mkSmallInteger(errno);
+	    goto err;
+	}
     }
 
     err:;
 #endif /* NO_SOCKET */
 %}.
     error notNil ifTrue:[
-        ^ self error:error.
+	^ self error:error.
     ].
     ^ nil
 
     "
      (Socket domain:#inet type:#stream)
-         bindTo:(IPSocketAddress hostAddress:IPSocketAddress anyAddress port:9999)
-         reuseAddress:false ;
+	 bindTo:(IPSocketAddress hostAddress:IPSocketAddress anyAddress port:9999)
+	 reuseAddress:false ;
      yourself
     "
 ! !
@@ -13976,8 +13976,8 @@
     struct sockaddr sockaddr;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     sock = __smallIntegerVal(__INST(fd));
 
@@ -13989,17 +13989,17 @@
     ret = connect(sock, &sockaddr, sizeof(sockaddr));
     if (ret < 0) {
        switch(errno) {
-           case EINTR:
+	   case EINTR:
 # ifdef EAGAIN
-            case EAGAIN:
-# endif
-                __HANDLE_INTERRUPTS__;
-                goto again;
-
-            default:
-                error = __mkSmallInteger(errno);
-                break;
-        }
+	    case EAGAIN:
+# endif
+		__HANDLE_INTERRUPTS__;
+		goto again;
+
+	    default:
+		error = __mkSmallInteger(errno);
+		break;
+	}
     }
 
 err:;
@@ -14007,7 +14007,7 @@
 %}.
 
     error notNil ifTrue:[
-        ^ self error:error.
+	^ self error:error.
     ].
 !
 
@@ -14026,13 +14026,13 @@
     int sockaddr_size;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__isNonNilObject(socketAddress) ||
-        (__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
-        error = @symbol(badArgument1);
-        goto err;
+	(__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
+	error = @symbol(badArgument1);
+	goto err;
     }
     sock = __smallIntegerVal(__INST(fd));
     sockaddr_size = __qSize(socketAddress);
@@ -14040,47 +14040,47 @@
 again:
     ret = connect(sock, (struct sockaddr *)__byteArrayVal(socketAddress), sockaddr_size);
     if (ret >= 0) {
-        RETURN(true)
+	RETURN(true)
     }
 
     switch(errno) {
-        case EINTR:
+	case EINTR:
 # ifdef EAGAIN
-        case EAGAIN:
-# endif
-            __HANDLE_INTERRUPTS__;
-            goto again;
+	case EAGAIN:
+# endif
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
 
 # if defined(EINPROGRESS) || defined(EALREADY)
 #  ifdef EINPROGRESS
-        case EINPROGRESS:
+	case EINPROGRESS:
 #  endif
 #  ifdef EALREADY
-        case EALREADY:
-#  endif
-            RETURN(false);
+	case EALREADY:
+#  endif
+	    RETURN(false);
 # endif
 
     default:
-        error = __mkSmallInteger(errno);
-        break;
+	error = __mkSmallInteger(errno);
+	break;
     }
 
 err:;
 #endif /* NO_SOCKET */
 %}.
     error notNil ifTrue:[
-         ^ self error:error.
+	 ^ self error:error.
     ].
     ^ true
 
     "
      Socket newTCP connectTo:(IPSocketAddress hostAddress:IPSocketAddress local port:7)
-                   withTimeout:nil.
+		   withTimeout:nil.
      Socket newTCP connectTo:(IPSocketAddress hostAddress:IPSocketAddress local port:5768)
-                   withTimeout:nil.
+		   withTimeout:nil.
      Socket newTCP connectTo:(IPSocketAddress hostAddress:#[1 2 3 4] port:7)
-                   withTimeout:nil.
+		   withTimeout:nil.
     "
 ! !
 
@@ -14110,46 +14110,46 @@
     int __flags, __startIndex, __nBytes;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__isSmallInteger(startIndex) ||
-        (__startIndex = __intVal(startIndex)-1) < 0) {
-        if (startIndex == nil) {
-            __startIndex = 0;
-        } else {
-            error = @symbol(badArgument3);
-            goto err;
-        }
+	(__startIndex = __intVal(startIndex)-1) < 0) {
+	if (startIndex == nil) {
+	    __startIndex = 0;
+	} else {
+	    error = @symbol(badArgument3);
+	    goto err;
+	}
     }
     if (__isSmallInteger(nBytes)) {
-        __nBytes = __intVal(nBytes);
+	__nBytes = __intVal(nBytes);
     } else if (nBytes == nil) {
-        __nBytes = -1;
+	__nBytes = -1;
     } else {
-        error = @symbol(badArgument4);
-        goto err;
+	error = @symbol(badArgument4);
+	goto err;
     }
     if (!__isInteger(flags)) {
-        error = @symbol(badArgument5);
-        goto err;
+	error = @symbol(badArgument5);
+	goto err;
     }
     __flags = __longIntVal(flags);
     sock = __smallIntegerVal(__INST(fd));
 
     oClass = __Class(aDataBuffer);
     switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
-        case BYTEARRAY:
-        case WORDARRAY:
-        case SWORDARRAY:
-        case LONGARRAY:
-        case SLONGARRAY:
-        case FLOATARRAY:
-        case DOUBLEARRAY:
-            break;
-        default:
-            error = @symbol(badArgument2);
-            goto err;
+	case BYTEARRAY:
+	case WORDARRAY:
+	case SWORDARRAY:
+	case LONGARRAY:
+	case SLONGARRAY:
+	case FLOATARRAY:
+	case DOUBLEARRAY:
+	    break;
+	default:
+	    error = @symbol(badArgument2);
+	    goto err;
     }
 
     nInstVars = __intVal(__ClassInstPtr(oClass)->c_ninstvars);
@@ -14159,35 +14159,35 @@
     objSize -= __startIndex;
 
     if (__nBytes >= 0 &&__nBytes < objSize) {
-        objSize = __nBytes;
+	objSize = __nBytes;
     }
 
     if (socketAddress == nil) {
-        alen0 = 0;
+	alen0 = 0;
     } else {
-        if (!__isNonNilObject(socketAddress) ||
-            (__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
-            error = @symbol(badArgument1);
-            goto err;
-        }
-        alen0 = __byteArraySize(socketAddress);
+	if (!__isNonNilObject(socketAddress) ||
+	    (__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
+	    error = @symbol(badArgument1);
+	    goto err;
+	}
+	alen0 = __byteArraySize(socketAddress);
     }
     saPtr = (struct sockaddr *)0;
 
 again:
     alen = alen0;
     if (alen)
-        saPtr = (struct sockaddr *)__byteArrayVal(socketAddress);
+	saPtr = (struct sockaddr *)__byteArrayVal(socketAddress);
     cp = (char *)__InstPtr(aDataBuffer) + nInstBytes;
     n = recvfrom(sock, cp, objSize, __flags, saPtr, &alen);
     if (n < 0) {
-        if (errno == EINTR) {
-            __HANDLE_INTERRUPTS__;
-            goto again;
-        } else {
-            error = __mkSmallInteger(errno);
-            goto err;
-        }
+	if (errno == EINTR) {
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
+	} else {
+	    error = __mkSmallInteger(errno);
+	    goto err;
+	}
     }
     RETURN (__mkSmallInteger(n));
 #endif
@@ -14217,65 +14217,65 @@
     int offs, __startIndex, __maxBytes;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__isSmallInteger(startIndex) ||
-        (__startIndex = __intVal(startIndex)-1) < 0) {
-        if (startIndex == nil) {
-            __startIndex = 0;
-        } else {
-            error = @symbol(badArgument3);
-            goto err;
-        }
+	(__startIndex = __intVal(startIndex)-1) < 0) {
+	if (startIndex == nil) {
+	    __startIndex = 0;
+	} else {
+	    error = @symbol(badArgument3);
+	    goto err;
+	}
     }
     if (__isSmallInteger(maxBytes)) {
-        __maxBytes = __intVal(maxBytes);
+	__maxBytes = __intVal(maxBytes);
     } else if (maxBytes == nil) {
-        __maxBytes = -1;
+	__maxBytes = -1;
     } else {
-        error = @symbol(badArgument4);
-        goto err;
+	error = @symbol(badArgument4);
+	goto err;
     }
     if (!__isInteger(flags)) {
-        error = @symbol(badArgument5);
-        goto err;
+	error = @symbol(badArgument5);
+	goto err;
     }
     __flags = __longIntVal(flags);
     sock = __smallIntegerVal(__INST(fd));
 
     oClass = __Class(aDataBuffer);
     switch (__intVal(__ClassInstPtr(oClass)->c_flags) & ARRAYMASK) {
-        case BYTEARRAY:
-            offs = __startIndex;
-            break;
-        case WORDARRAY:
-        case SWORDARRAY:
-            offs = __startIndex * 2;
-            break;
-        case LONGARRAY:
-        case SLONGARRAY:
-            offs = __startIndex * 4;
-            break;
-        case LONGLONGARRAY:
-        case SLONGLONGARRAY:
-            offs = __startIndex * 8;
+	case BYTEARRAY:
+	    offs = __startIndex;
+	    break;
+	case WORDARRAY:
+	case SWORDARRAY:
+	    offs = __startIndex * 2;
+	    break;
+	case LONGARRAY:
+	case SLONGARRAY:
+	    offs = __startIndex * 4;
+	    break;
+	case LONGLONGARRAY:
+	case SLONGLONGARRAY:
+	    offs = __startIndex * 8;
 # ifdef __NEED_LONGLONG_ALIGN
-            offs += 4;
-# endif
-            break;
-        case FLOATARRAY:
-            offs = __startIndex * sizeof(float);
-            break;
-        case DOUBLEARRAY:
-            offs = __startIndex * sizeof(double);
+	    offs += 4;
+# endif
+	    break;
+	case FLOATARRAY:
+	    offs = __startIndex * sizeof(float);
+	    break;
+	case DOUBLEARRAY:
+	    offs = __startIndex * sizeof(double);
 # ifdef __NEED_DOUBLE_ALIGN
-            offs += 4;
-# endif
-            break;
-        default:
-            error = @symbol(badArgument2);
-            goto err;
+	    offs += 4;
+# endif
+	    break;
+	default:
+	    error = @symbol(badArgument2);
+	    goto err;
     }
 
     nInstVars = __smallIntegerVal(__ClassInstPtr(oClass)->c_ninstvars);
@@ -14284,35 +14284,35 @@
 
     if (__maxBytes >= 0 && __maxBytes < objSize) {
 # ifdef DGRAM_DEBUG
-        printf("cut off ...\n");
-# endif
-        objSize = __maxBytes;
+	printf("cut off ...\n");
+# endif
+	objSize = __maxBytes;
     }
 
     if (socketAddress == nil) {
-        alen = 0;
+	alen = 0;
     } else {
-        if (! __isByteArrayLike(socketAddress)) {
-            error = @symbol(badArgument1);
-            goto err;
-        }
-        alen = __byteArraySize(socketAddress);
+	if (! __isByteArrayLike(socketAddress)) {
+	    error = @symbol(badArgument1);
+	    goto err;
+	}
+	alen = __byteArraySize(socketAddress);
     }
     saPtr = (struct sockaddr *)0;
 
 again:
     if (alen)
-        saPtr = (struct sockaddr *)__byteArrayVal(socketAddress);
+	saPtr = (struct sockaddr *)__byteArrayVal(socketAddress);
     cp = (char *)__InstPtr(aDataBuffer) + nInstBytes + offs;
     n = sendto(sock, cp, objSize, __flags, saPtr, alen);
     if (n < 0) {
-        if (errno == EINTR) {
-            __HANDLE_INTERRUPTS__;
-            goto again;
-        } else {
-            error = __mkSmallInteger(errno);
-            goto err;
-        }
+	if (errno == EINTR) {
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
+	} else {
+	    error = __mkSmallInteger(errno);
+	    goto err;
+	}
     }
     RETURN (__mkSmallInteger(n));
 #endif
@@ -14337,7 +14337,7 @@
     domainCode := OperatingSystem domainCodeOf:domainArg.
     typeCode := OperatingSystem socketTypeCodeOf:typeArg.
     protocolArg notNil ifTrue:[
-        protocolNumber := self class protocolCodeOf:protocolArg
+	protocolNumber := self class protocolCodeOf:protocolArg
     ].
 
 %{
@@ -14346,23 +14346,23 @@
     int on = 1;
 
     if (__INST(fd) != nil) {
-        error = @symbol(internalError);
-        goto err;
+	error = @symbol(internalError);
+	goto err;
     }
     if (! __isSmallInteger(domainCode)) {
-        error = @symbol(badArgument1);
-        goto err;
+	error = @symbol(badArgument1);
+	goto err;
     }
     if (! __isSmallInteger(typeArg)) {
-        error = @symbol(badArgument2);
-        goto err;
+	error = @symbol(badArgument2);
+	goto err;
     }
     if (protocolNumber != nil) {
-        if (!__isSmallInteger(protocolNumber)) {
-            error = @symbol(badArgument3);
-            goto err;
-        }
-        proto = __smallIntegerVal(protocolNumber);
+	if (!__isSmallInteger(protocolNumber)) {
+	    error = @symbol(badArgument3);
+	    goto err;
+	}
+	proto = __smallIntegerVal(protocolNumber);
     }
     dom = __smallIntegerVal(domainCode);
 
@@ -14374,20 +14374,20 @@
 againSocket:
     sock = socket(dom, typ, proto);
     if (sock < 0) {
-        if (errno == EINTR) {
-            __HANDLE_INTERRUPTS__;
-            goto againSocket;
-        } else
+	if (errno == EINTR) {
+	    __HANDLE_INTERRUPTS__;
+	    goto againSocket;
+	} else
 # if defined(EPROTONOSUPPORT) /* for SGI */
-        if (errno == EPROTONOSUPPORT && proto != 0) {
-            proto = 0;
-            goto againSocket;
-        } else
-# endif
-        {
-            error = __mkSmallInteger(errno);
-            goto err;
-        }
+	if (errno == EPROTONOSUPPORT && proto != 0) {
+	    proto = 0;
+	    goto againSocket;
+	} else
+# endif
+	{
+	    error = __mkSmallInteger(errno);
+	    goto err;
+	}
     }
     __INST(fd) = __mkSmallInteger(sock);
 
@@ -14397,7 +14397,7 @@
 # endif /* NOSOCKET */
 %}.
     error notNil ifTrue:[
-        ^ self error:error.
+	^ self error:error.
     ].
     self register.
 
@@ -14423,23 +14423,23 @@
     char *p;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__bothSmallInteger(level, name)) {
-        error = @symbol(badArgument);
-        goto err;
+	error = @symbol(badArgument);
+	goto err;
     }
     if (!__isByteArray(bytes)) {
-        error = @symbol(internalError);
-        goto err;
+	error = @symbol(internalError);
+	goto err;
     }
     p = __byteArrayVal(bytes);
     sz = __byteArraySize(bytes);
 
     sock = __smallIntegerVal(__INST(fd));
     if (getsockopt(sock, __smallIntegerVal(level), __smallIntegerVal(name), p, &sz) < 0) {
-        error = __mkSmallInteger(errno);
+	error = __mkSmallInteger(errno);
     }
     size = __mkSmallInteger(sz);
 
@@ -14447,7 +14447,7 @@
 #endif
 %}.
     error notNil ifTrue:[
-        ^ self error:error
+	^ self error:error
     ].
     ^ bytes copyTo:size
 !
@@ -14464,12 +14464,12 @@
     int sock, ret;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__isSmallInteger(aNumber)) {
-        error = @symbol(badArgument1);
-        goto err;
+	error = @symbol(badArgument1);
+	goto err;
     }
 
     sock = __smallIntegerVal(__INST(fd));
@@ -14477,19 +14477,19 @@
 again:
     ret = listen(sock, __smallIntegerVal(aNumber));
     if (ret < 0) {
-        if (errno == EINTR) {
-            __HANDLE_INTERRUPTS__;
-            goto again;
-        } else {
-            error = __mkSmallInteger(errno);
-        }
+	if (errno == EINTR) {
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
+	} else {
+	    error = __mkSmallInteger(errno);
+	}
     }
 
 err:;
 #endif
 %}.
     error notNil ifTrue:[
-        ^ self error:error.
+	^ self error:error.
     ].
     ^ nil
 !
@@ -14507,48 +14507,48 @@
     char *p;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (__isSmallInteger(level)) {
-        __level = __smallIntegerVal(level);
+	__level = __smallIntegerVal(level);
     } else if (level == @symbol(SOL_SOCKET)) {
-        __level = SOL_SOCKET;
+	__level = SOL_SOCKET;
     } else {
-        error = @symbol(badArgument1);
-        goto err;
+	error = @symbol(badArgument1);
+	goto err;
     }
 
     if (__isSmallInteger(name)) {
-        __name = __smallIntegerVal(name);
+	__name = __smallIntegerVal(name);
     } else if (name == @symbol(SO_REUSEADDR)) {
-        __name = SO_REUSEADDR;
+	__name = SO_REUSEADDR;
     } else {
-        error = @symbol(badArgument2);
-        goto err;
+	error = @symbol(badArgument2);
+	goto err;
     }
 
     if (__isSmallInteger(value)) {
-        intval = __intVal(value);
-        p = (char *) &intval;
-        sz = sizeof(intval);
+	intval = __intVal(value);
+	p = (char *) &intval;
+	sz = sizeof(intval);
     } else if (__isByteArrayLike(value)) {
-        p = __byteArrayVal(value);
-        sz = __byteArraySize(value);
+	p = __byteArrayVal(value);
+	sz = __byteArraySize(value);
     } else {
-        error = @symbol(badArgument3);
-        goto err;
+	error = @symbol(badArgument3);
+	goto err;
     }
 
     sock = __smallIntegerVal(__INST(fd));
     if (setsockopt(sock, __level, __name, p, sz) < 0) {
-        error = __mkSmallInteger(errno);
+	error = __mkSmallInteger(errno);
     }
 err:;
 #endif
 %}.
     error notNil ifTrue:[
-        ^ self error:error
+	^ self error:error
     ].
     ^ nil.
 !
@@ -14558,9 +14558,9 @@
      anInteger == 0   no reads will be performed
      anInteger == 1   no writes will be performed
      anInteger == 2   neither reads nor writes will be performed.
-                      Pending data is discarded. This is faster tha
-                      close, which may wait until pending (written)
-                      data has been read by the other side"
+		      Pending data is discarded. This is faster tha
+		      close, which may wait until pending (written)
+		      data has been read by the other side"
 
     |error|
 
@@ -14569,30 +14569,30 @@
     int ret;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__isSmallInteger(anInteger)) {
-        error = @symbol(badArgument1);
-        goto err;
+	error = @symbol(badArgument1);
+	goto err;
     }
 
 again:
     ret = shutdown(__smallIntegerVal(__INST(fd)), __smallIntegerVal(anInteger));
     if (ret < 0) {
-        if (errno == EINTR) {
-            __HANDLE_INTERRUPTS__;
-            goto again;
-        } else {
-            error = __mkSmallInteger(errno);
-        }
+	if (errno == EINTR) {
+	    __HANDLE_INTERRUPTS__;
+	    goto again;
+	} else {
+	    error = __mkSmallInteger(errno);
+	}
     }
 
 err:;
 #endif /*NO_SOCKET*/
 %}.
     error notNil ifTrue:[
-        ^ self error:error
+	^ self error:error
     ].
     ^ nil.
 ! !
@@ -14612,26 +14612,26 @@
     int ret;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__isNonNilObject(socketAddress) ||
-        (__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
-        error = @symbol(badArgument1);
-        goto err;
+	(__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
+	error = @symbol(badArgument1);
+	goto err;
     }
     sockaddr_size = __byteArraySize(socketAddress);
 
     sock = __smallIntegerVal(__INST(fd));
     ret = getsockname(sock, (struct sockaddr *)__byteArrayVal(socketAddress), &sockaddr_size);
     if (ret < 0) {
-        error = __mkSmallInteger(errno);
+	error = __mkSmallInteger(errno);
     }
 err:;
 #endif /* NO_SOCKET */
 %}.
     error notNil ifTrue:[
-        ^ self error:error
+	^ self error:error
     ].
     ^ nil.
 !
@@ -14649,27 +14649,27 @@
     int __ret;
 
     if (!__isSmallInteger(__INST(fd))) {
-        error = @symbol(badFd);
-        goto err;
+	error = @symbol(badFd);
+	goto err;
     }
     if (!__isNonNilObject(socketAddress) ||
-        (__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
-        error = @symbol(badArgument1);
-        goto err;
+	(__intVal(__ClassInstPtr(__qClass(socketAddress))->c_flags) & ARRAYMASK) != BYTEARRAY) {
+	error = @symbol(badArgument1);
+	goto err;
     }
     __sockaddr_size = __byteArraySize(socketAddress);
 
     __sock = __smallIntegerVal(__INST(fd));
     __ret = getpeername(__sock, (struct sockaddr *)__byteArrayVal(socketAddress),
-                                &__sockaddr_size);
+				&__sockaddr_size);
     if (__ret < 0) {
-        error = __mkSmallInteger(errno);
+	error = __mkSmallInteger(errno);
     }
 err:;
 #endif /* NO_SOCKET */
 %}.
     error notNil ifTrue:[
-        ^ self error:error
+	^ self error:error
     ].
     ^ nil
 ! !