]> arthur.barton.de Git - netatalk.git/blobdiff - etc/afpd/fork.c
Fix fce merge conflict
[netatalk.git] / etc / afpd / fork.c
index e8c019e1093cf8723e839daa62fc8a8b9fa493be..f7d9f82a839fb2412c3b514bf3df3e5fa06e0826 100644 (file)
@@ -73,7 +73,7 @@ static int getforkparams(struct ofork *ofork, u_int16_t bitmap, char *buf, size_
     }
 
     vol = ofork->of_vol;
-    dir = ofork->of_dir;
+    dir = dirlookup(vol, ofork->of_did);
 
     if (NULL == (path.u_name = mtoupath(vol, of_name(ofork), dir->d_did, utf8_encoding()))) {
         return( AFPERR_MISC );
@@ -1337,6 +1337,9 @@ static int write_fork(AFPObj *obj, char *ibuf, size_t ibuflen _U_, char *rbuf, s
     if ( ad_meta_fileno( ofork->of_ad ) != -1 ) /* META */
         ofork->of_flags |= AFPFORK_DIRTY;
 
+    /* we have modified any fork, remember until close_fork */
+    ofork->of_flags |= AFPFORK_MODIFIED;
+
     *rbuflen = set_off_t (offset, rbuf, is64);
     return( AFP_OK );