X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libatalk%2Fadouble%2Fad_lock.c;h=a5d00e9cbabea271f5fbf8ad1a58cde5045f3ddb;hb=f05ac9452b2f60773adcc8adefc117e145052fb6;hp=0cb1968ddd4628f89c23b4925dce14ddf02826bf;hpb=39b87f80a88ac1798c26033fc04eb0f46a1ce70d;p=netatalk.git diff --git a/libatalk/adouble/ad_lock.c b/libatalk/adouble/ad_lock.c index 0cb1968d..a5d00e9c 100644 --- a/libatalk/adouble/ad_lock.c +++ b/libatalk/adouble/ad_lock.c @@ -1,5 +1,5 @@ /* - * $Id: ad_lock.c,v 1.11.6.4 2004-05-08 22:37:46 didg Exp $ + * $Id: ad_lock.c,v 1.11.6.4.2.1 2004-12-07 03:24:38 didg Exp $ * * Copyright (c) 1998,1999 Adrian Sun (asun@zoology.washington.edu) * All Rights Reserved. See COPYRIGHT for more information. @@ -403,9 +403,14 @@ int ad_testlock(struct adouble *ad, int eid, const off_t off) if ((ad_hfileno(ad) != -1)) { adf = &ad->ad_hf; lock.l_start = df2off(off); - } - } else { /* rfork */ - adf = &ad->ad_hf; + } + } + else { /* rfork */ + if ((ad_hfileno(ad) == -1)) { + /* there's no resource fork. return no lock */ + return 0; + } + adf = &ad->ad_hf; lock.l_start = hf2off(off); }