depmod: use ferror and fclose to check for error

Thanks to hpa for point this out.
diff --git a/tools/depmod.c b/tools/depmod.c
index 790cc76..834bb05 100644
--- a/tools/depmod.c
+++ b/tools/depmod.c
@@ -2236,8 +2236,7 @@
 	for (itr = depfiles; itr->name != NULL; itr++) {
 		FILE *fp = out;
 		char tmp[NAME_MAX] = "";
-		int r;
-		long eof;
+		int r, ferr;
 
 		if (fp == NULL) {
 			int flags = O_CREAT | O_TRUNC | O_WRONLY;
@@ -2263,8 +2262,8 @@
 		if (fp == out)
 			continue;
 
-		eof = ftell(fp);
-		fclose(fp);
+		ferr = ferror(fp) | fclose(fp);
+
 		if (r < 0) {
 			if (unlinkat(dfd, tmp, 0) != 0)
 				ERR("unlinkat(%s, %s): %m\n", dname, tmp);
@@ -2283,10 +2282,10 @@
 			break;
 		}
 
-		if (eof == EOF) {
+		if (ferr) {
 			err = -ENOSPC;
-			ERR("Could not create index: output truncated: %s\n",
-								strerror(-err));
+			ERR("Could not create index '%s'. Output is truncated: %s\n",
+						itr->name, strerror(-err));
 			break;
 		}
 	}