From: Markus Goetz Date: Wed, 2 Oct 2013 14:47:21 +0000 (+0200) Subject: DAV: Use fileinfo_cache for ETag X-Git-Tag: v6.0.0alpha2~100^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=7f7718888d3d9027a7f12e922b101c82a2e17146;p=nextcloud-server.git DAV: Use fileinfo_cache for ETag --- diff --git a/lib/private/connector/sabre/node.php b/lib/private/connector/sabre/node.php index 29b7f9e53a5..e65ad7b8bef 100644 --- a/lib/private/connector/sabre/node.php +++ b/lib/private/connector/sabre/node.php @@ -207,7 +207,14 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr while( $row = $result->fetchRow()) { $this->property_cache[$row['propertyname']] = $row['propertyvalue']; } - $this->property_cache[self::GETETAG_PROPERTYNAME] = $this->getETagPropertyForPath($this->path); + + // Don't call the static getETagPropertyForPath, its result is not cached + $this->getFileinfoCache(); + if ($this->fileinfo_cache['etag']) { + $this->property_cache[self::GETETAG_PROPERTYNAME] = '"'.$this->fileinfo_cache['etag'].'"'; + } else { + $this->property_cache[self::GETETAG_PROPERTYNAME] = null; + } } // if the array was empty, we need to return everything