--- gvfs-1.4.3/daemon/gvfsbackendsmb.c.orig	2011-09-07 17:21:23.770262236 +0200
+++ gvfs-1.4.3/daemon/gvfsbackendsmb.c	2011-09-07 17:32:37.208135583 +0200
@@ -1513,7 +1513,8 @@
 
   /* If file is dos-readonly, libsmbclient doesn't set S_IWUSR, we use this to
      trigger ACCESS_WRITE = FALSE: */
-  if (!(statbuf->st_mode & S_IWUSR))
+  /* anhe, 07.09.2011: only set ACCESS_WRITE = FALSE for regular files */
+  if ((S_ISREG (statbuf->st_mode)) && !(statbuf->st_mode & S_IWUSR))
     g_file_info_set_attribute_boolean (info, G_FILE_ATTRIBUTE_ACCESS_CAN_WRITE, FALSE);
 
   g_file_info_set_attribute_uint64 (info, G_FILE_ATTRIBUTE_TIME_ACCESS, statbuf->st_atime);

