aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMartin Nowack <martin.nowack@gmail.com>2013-08-27 22:16:42 +0200
committerMartin Nowack <martin.nowack@gmail.com>2013-08-27 23:22:28 +0200
commita9bad13dd6000b431c8ef917515c1f33e2d67a05 (patch)
tree2acbd2d0c754aa94803d989842598b18c903d145
parentc4147c2ad9ba1e74642e1a3de31be8f4446cc7f3 (diff)
downloadklee-a9bad13dd6000b431c8ef917515c1f33e2d67a05.tar.gz
Fix implementation for putchar
According to manual: putchar() return the character written as an unsigned char cast to an int or EOF on error. Use return value of write to return the correct value for putchar.
-rw-r--r--runtime/klee-libc/putchar.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/runtime/klee-libc/putchar.c b/runtime/klee-libc/putchar.c
index 4c3a57e4..497402a6 100644
--- a/runtime/klee-libc/putchar.c
+++ b/runtime/klee-libc/putchar.c
@@ -15,6 +15,7 @@
int putchar(int c) {
char x = c;
- write(1, &x, 1);
- return 1;
+ if (1 == write(1, &x, 1))
+ return c;
+ return EOF;
}