diff options
author | alfredoport <doyenatccny@gmail.com> | 2008-12-06 15:40:10 +0000 |
---|---|---|
committer | alfredoport <doyenatccny@gmail.com> | 2008-12-06 15:40:10 +0000 |
commit | dec92cd40550e8532d36502dd75d6f9d639d7f7c (patch) | |
tree | b4519974fc09e7b5803d3cfe149c4310cf25ffa9 /src/lib | |
parent | dd55b5ac1701d057ec49a45bfbc790f628757b52 (diff) | |
download | open-axiom-dec92cd40550e8532d36502dd75d6f9d639d7f7c.tar.gz |
Support getting process id in Windows.
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/cfuns-c.c | 10 | ||||
-rw-r--r-- | src/lib/fnct_key.c | 2 | ||||
-rw-r--r-- | src/lib/sockio-c.c | 8 | ||||
-rw-r--r-- | src/lib/util.c | 2 |
4 files changed, 15 insertions, 7 deletions
diff --git a/src/lib/cfuns-c.c b/src/lib/cfuns-c.c index bf3b7f7c..fb043c9f 100644 --- a/src/lib/cfuns-c.c +++ b/src/lib/cfuns-c.c @@ -505,7 +505,15 @@ oa_system(const char* cmd) return system(cmd); } - +OPENAXIOM_EXPORT int +oa_getpid(void) +{ +#ifdef __WIN32__ + return GetCurrentProcessId(); +#else + return getpid(); +#endif +} /* Return the value of an environment variable. */ OPENAXIOM_EXPORT char* diff --git a/src/lib/fnct_key.c b/src/lib/fnct_key.c index f2c088ea..b125fbca 100644 --- a/src/lib/fnct_key.c +++ b/src/lib/fnct_key.c @@ -80,7 +80,7 @@ set_editor_key(void) { int pid; - sprintf(editorfilename, "/tmp/clef%d", pid = getpid()); + sprintf(editorfilename, "/tmp/clef%d", pid = oa_getpid()); if (function_key[12].str == NULL) { (function_key[12]).type = SPECIAL; diff --git a/src/lib/sockio-c.c b/src/lib/sockio-c.c index 077f45fb..365e88eb 100644 --- a/src/lib/sockio-c.c +++ b/src/lib/sockio-c.c @@ -1014,7 +1014,7 @@ connect_to_local_server_new(char *server_name, int purpose, int time_out) return NULL; } - send_int(sock, getpid()); + send_int(sock, oa_getpid()); send_int(sock, purpose); send_int(sock, sock->socket); sock->pid = get_int(sock); @@ -1066,7 +1066,7 @@ connect_to_local_server(char *server_name, int purpose, int time_out) if (code == -1) { return NULL; } - send_int(sock, getpid()); + send_int(sock, oa_getpid()); send_int(sock, sock->purpose); send_int(sock, sock->socket); sock->pid = get_int(sock); @@ -1124,7 +1124,7 @@ init_purpose_table(void) OPENAXIOM_EXPORT int make_server_number(void) { - spad_server_number = getpid(); + spad_server_number = oa_getpid(); return spad_server_number; } @@ -1249,7 +1249,7 @@ get_socket_type(openaxiom_sio *sock) sock->pid = get_int(sock); sock->purpose = get_int(sock); sock->remote = get_int(sock); - send_int(sock, getpid()); + send_int(sock, oa_getpid()); send_int(sock, sock->socket); purpose_table[sock->purpose] = sock; switch (sock->purpose) { diff --git a/src/lib/util.c b/src/lib/util.c index 8174fa8c..b4946858 100644 --- a/src/lib/util.c +++ b/src/lib/util.c @@ -58,7 +58,7 @@ checker(int code, int lineNumber, char *errorStr) if (code < 0) { fprintf(stderr, "Error occured during %s\n", errorStr); fprintf(stderr, "Error code of %d\n", errno); - fprintf(stderr, "Error in line number %d of process %d\n", lineNumber, getpid()); + fprintf(stderr, "Error in line number %d of process %d\n", lineNumber, oa_getpid()); perror(""); } return (code); |