summaryrefslogtreecommitdiff
path: root/dmake/winnt/dchdir.c
diff options
context:
space:
mode:
Diffstat (limited to 'dmake/winnt/dchdir.c')
-rw-r--r--dmake/winnt/dchdir.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/dmake/winnt/dchdir.c b/dmake/winnt/dchdir.c
new file mode 100644
index 000000000000..de2cf18041a8
--- /dev/null
+++ b/dmake/winnt/dchdir.c
@@ -0,0 +1,47 @@
+/* RCS $Id: dchdir.c,v 1.1.1.1 2000-09-22 15:33:37 hr Exp $
+--
+-- SYNOPSIS
+-- Change directory.
+--
+-- DESCRIPTION
+-- Under DOS change the current drive as well as the current directory.
+--
+-- AUTHOR
+-- Dennis Vadura, dvadura@dmake.wticorp.com
+--
+-- WWW
+-- http://dmake.wticorp.com/
+--
+-- COPYRIGHT
+-- Copyright (c) 1996,1997 by WTI Corp. All rights reserved.
+--
+-- This program is NOT free software; you can redistribute it and/or
+-- modify it under the terms of the Software License Agreement Provided
+-- in the file <distribution-root>/readme/license.txt.
+--
+-- LOG
+-- Use cvs log to obtain detailed change logs.
+*/
+
+#include <dir.h>
+#include <direct.h>
+#include "extern.h"
+
+PUBLIC int
+dchdir(path)
+char *path;
+{
+ int res;
+
+ res = chdir(path);
+
+ if (res != -1 && path[1] == ':') {
+ unsigned new_drive;
+
+ /* for WIN32 just use the _chdrive library call */
+ new_drive = (*path & ~0x20) - 'A' + 1;
+ _chdrive(new_drive);
+ }
+
+ return (res);
+}