home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
- #include "tcl.h"
- /*
- * MOVE_ARGV(argv, argc, srcArray, dstArray, len);
- *
- * Moves an argv pointing into portions of the source string, into the
- * (presumably larger) destination string. It does this by copying
- * the contents of the array, then adjusting each element of the argv.
- * since the two strings may not be in contiguous memory, we have to
- * work with offsets.
- */
-
- move_argv(argv, argc, src, dst, len)
- char **argv;
- int argc;
- char *src;
- char *dst;
- int len;
- {
- int i;
- unsigned off;
-
- bcopy(src, dst, len);
- for(i = 0; i <= argc; i++) {
- off = argv[i] - src;
- argv[i] = dst + off;
- }
- }
-