Skip to content

Commit 3333987

Browse files
Fix Firestore document caching so it works (#461)
1 parent cde5ff2 commit 3333987

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

addons/godot-firebase/firestore/firestore_collection.gd

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ var _base_url : String
2222
var _extended_url : String
2323
var _config : Dictionary
2424

25-
var _documents := {}
26-
2725
# ----------------------- Requests
2826

2927
## @args document_id
@@ -44,11 +42,16 @@ func get_doc(document_id : String, from_cache : bool = false, is_listener : bool
4442
_process_request(task, document_id, url)
4543
var result = await Firebase.Firestore._handle_task_finished(task)
4644
if result != null:
45+
var found_document = false
4746
for child in get_children():
4847
if child.doc_name == document_id:
4948
child.replace(result, true)
5049
result = child
50+
found_document = true
5151
break
52+
53+
if not found_document:
54+
add_child(result, true)
5255
else:
5356
print("get_document returned null for %s %s" % [collection_name, document_id])
5457

@@ -96,7 +99,7 @@ func update(document : FirestoreDocument) -> FirestoreDocument:
9699
var temp_transforms
97100
if document._transforms != null:
98101
temp_transforms = document._transforms
99-
document._transforms = null
102+
document._transforms = FieldTransformArray.new()
100103

101104
var body = JSON.stringify({"fields": document.document})
102105

0 commit comments

Comments
 (0)