aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/ld
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2010-09-28 13:00:13 -0400
committerRuss Cox <rsc@golang.org>2010-09-28 13:00:13 -0400
commit05cc83bf4e2e59fa4b6c1bcd117bd85f8e4f559d (patch)
tree82b6a861d4404a7bf7eb40cd18014049c6134269 /src/cmd/ld
parentec13ed1fce4164477dece0c3486bebf93c0ad1e6 (diff)
downloadgo-05cc83bf4e2e59fa4b6c1bcd117bd85f8e4f559d.tar.xz
various: appease the ubuntu gcc monster
Silence warnings about not checking return values from read and write system calls. R=r, r2 CC=golang-dev https://golang.org/cl/2258045
Diffstat (limited to 'src/cmd/ld')
-rw-r--r--src/cmd/ld/elf.c2
-rw-r--r--src/cmd/ld/lib.c9
-rw-r--r--src/cmd/ld/lib.h1
-rw-r--r--src/cmd/ld/macho.c4
4 files changed, 13 insertions, 3 deletions
diff --git a/src/cmd/ld/elf.c b/src/cmd/ld/elf.c
index 0ebdcf024c..4286349dbe 100644
--- a/src/cmd/ld/elf.c
+++ b/src/cmd/ld/elf.c
@@ -316,7 +316,7 @@ elfwriteinterp(void)
n = strlen(interp)+1;
seek(cout, ELFRESERVE-n, 0);
- write(cout, interp, n);
+ ewrite(cout, interp, n);
return n;
}
diff --git a/src/cmd/ld/lib.c b/src/cmd/ld/lib.c
index 0cdc6778fc..3e755d7f96 100644
--- a/src/cmd/ld/lib.c
+++ b/src/cmd/ld/lib.c
@@ -924,3 +924,12 @@ addsection(Segment *seg, char *name, int rwx)
*l = sect;
return sect;
}
+
+void
+ewrite(int fd, void *buf, int n)
+{
+ if(write(fd, buf, n) < 0) {
+ diag("write error: %r");
+ errorexit();
+ }
+}
diff --git a/src/cmd/ld/lib.h b/src/cmd/ld/lib.h
index 092161e14b..b828bed6ea 100644
--- a/src/cmd/ld/lib.h
+++ b/src/cmd/ld/lib.h
@@ -128,6 +128,7 @@ void ldpkg(Biobuf*, char*, int64, char*, int);
void mark(Sym *s);
char* expandpkg(char*, char*);
void deadcode(void);
+void ewrite(int, void*, int);
int pathchar(void);
void* mal(uint32);
diff --git a/src/cmd/ld/macho.c b/src/cmd/ld/macho.c
index 407fb553d4..b3b1f8c497 100644
--- a/src/cmd/ld/macho.c
+++ b/src/cmd/ld/macho.c
@@ -430,8 +430,8 @@ domacholink(void)
}
}
- write(cout, linkdata, nlinkdata);
- write(cout, strtab, nstrtab);
+ ewrite(cout, linkdata, nlinkdata);
+ ewrite(cout, strtab, nstrtab);
}
return rnd(nlinkdata+nstrtab, INITRND);
}