[shotwell: 1/2] (joe) hang metadata on the rawreader to avoid re-parsing
- From: Jens Georg <jensgeorg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [shotwell: 1/2] (joe) hang metadata on the rawreader to avoid re-parsing
- Date: Fri, 2 Apr 2021 10:56:59 +0000 (UTC)
commit 979f26a1347b39461722e9c9ef15caa6285b6b9f
Author: Joseph Bylund <joseph bylund gmail com>
Date: Thu Apr 1 18:09:35 2021 -0400
(joe) hang metadata on the rawreader to avoid re-parsing
src/photos/RawSupport.vala | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/src/photos/RawSupport.vala b/src/photos/RawSupport.vala
index d457aa76..09ea0829 100644
--- a/src/photos/RawSupport.vala
+++ b/src/photos/RawSupport.vala
@@ -210,15 +210,19 @@ public class RawSniffer : PhotoFileSniffer {
}
public class RawReader : PhotoFileReader {
+ private PhotoMetadata? cached_metadata = null;
+
public RawReader(string filepath) {
base (filepath, PhotoFileFormat.RAW);
}
public override PhotoMetadata read_metadata() throws Error {
- PhotoMetadata metadata = new PhotoMetadata();
- metadata.read_from_file(get_file());
-
- return metadata;
+ if (cached_metadata == null) {
+ PhotoMetadata metadata = new PhotoMetadata();
+ metadata.read_from_file(get_file());
+ cached_metadata = metadata;
+ }
+ return cached_metadata;
}
public override Gdk.Pixbuf unscaled_read() throws Error {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]