]> diplodocus.org Git - nmh/blobdiff - sbr/lock_file.c
A bug fix and an enhancement to mhfixmsg based on patches
[nmh] / sbr / lock_file.c
index 8506faf818c4a05251cf9db72f44eb583abadcb9..13a16029cbaa2eeb597260cdcaaaab008fa2c9a9 100644 (file)
@@ -229,8 +229,13 @@ lkclosedata(int fd, const char *name)
 int
 lkfclosedata(FILE *f, const char *name)
 {
-    int fd = fileno(f);
-    int rc = fclose(f);
+    int fd, rc;
+
+    if (f == NULL)
+       return 0;
+    
+    fd = fileno(f);
+    rc = fclose(f);
 
     if (datalocktype == DOT_LOCKING)
        lkclose_dot(fd, name);
@@ -252,8 +257,13 @@ lkclosespool(int fd, const char *name)
 int
 lkfclosespool(FILE *f, const char *name)
 {
-    int fd = fileno(f);
-    int rc = fclose(f);
+    int fd, rc;
+
+    if (f == NULL)
+       return 0;
+    
+    fd = fileno(f);
+    rc = fclose(f);
 
     if (spoollocktype == DOT_LOCKING)
        lkclose_dot(fd, name);
@@ -735,21 +745,21 @@ alrmser (int sig)
 static enum locktype
 init_locktype(const char *lockname)
 {
-    if (mh_strcasecmp(lockname, "fcntl") == 0) {
+    if (strcasecmp(lockname, "fcntl") == 0) {
        return FCNTL_LOCKING;
-    } else if (mh_strcasecmp(lockname, "lockf") == 0) {
+    } else if (strcasecmp(lockname, "lockf") == 0) {
 #ifdef HAVE_LOCKF
        return LOCKF_LOCKING;
 #else /* ! HAVE_LOCKF */
        adios(NULL, "lockf not supported on this system");
 #endif /* HAVE_LOCKF */
-    } else if (mh_strcasecmp(lockname, "flock") == 0) {
+    } else if (strcasecmp(lockname, "flock") == 0) {
 #ifdef HAVE_FLOCK
        return FLOCK_LOCKING;
 #else /* ! HAVE_FLOCK */
        adios(NULL, "flock not supported on this system");
 #endif /* HAVE_FLOCK */
-    } else if (mh_strcasecmp(lockname, "dot") == 0) {
+    } else if (strcasecmp(lockname, "dot") == 0) {
        return DOT_LOCKING;
     } else {
        adios(NULL, "Unknown lock type: \"%s\"", lockname);