Restore FileAccess.close method.
This commit is contained in:
parent
953383328a
commit
bc95b0b171
22 changed files with 76 additions and 1 deletions
|
|
@ -856,6 +856,8 @@ void FileAccess::_bind_methods() {
|
|||
ClassDB::bind_method(D_METHOD("store_pascal_string", "string"), &FileAccess::store_pascal_string);
|
||||
ClassDB::bind_method(D_METHOD("get_pascal_string"), &FileAccess::get_pascal_string);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("close"), &FileAccess::close);
|
||||
|
||||
ClassDB::bind_static_method("FileAccess", D_METHOD("file_exists", "path"), &FileAccess::exists);
|
||||
ClassDB::bind_static_method("FileAccess", D_METHOD("get_modified_time", "file"), &FileAccess::get_modified_time);
|
||||
|
||||
|
|
|
|||
|
|
@ -166,6 +166,8 @@ public:
|
|||
|
||||
void store_var(const Variant &p_var, bool p_full_objects = false);
|
||||
|
||||
virtual void close() = 0;
|
||||
|
||||
virtual bool file_exists(const String &p_name) = 0; ///< return true if a file exists
|
||||
|
||||
virtual Error reopen(const String &p_path, int p_mode_flags); ///< does not change the AccessType
|
||||
|
|
|
|||
|
|
@ -385,6 +385,10 @@ Error FileAccessCompressed::_set_unix_permissions(const String &p_file, uint32_t
|
|||
return FAILED;
|
||||
}
|
||||
|
||||
void FileAccessCompressed::close() {
|
||||
_close();
|
||||
}
|
||||
|
||||
FileAccessCompressed::~FileAccessCompressed() {
|
||||
_close();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -97,6 +97,8 @@ public:
|
|||
virtual uint32_t _get_unix_permissions(const String &p_file) override;
|
||||
virtual Error _set_unix_permissions(const String &p_file, uint32_t p_permissions) override;
|
||||
|
||||
virtual void close() override;
|
||||
|
||||
FileAccessCompressed() {}
|
||||
virtual ~FileAccessCompressed();
|
||||
};
|
||||
|
|
|
|||
|
|
@ -294,6 +294,10 @@ Error FileAccessEncrypted::_set_unix_permissions(const String &p_file, uint32_t
|
|||
return ERR_UNAVAILABLE;
|
||||
}
|
||||
|
||||
void FileAccessEncrypted::close() {
|
||||
_close();
|
||||
}
|
||||
|
||||
FileAccessEncrypted::~FileAccessEncrypted() {
|
||||
_close();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -88,6 +88,8 @@ public:
|
|||
virtual uint32_t _get_unix_permissions(const String &p_file) override;
|
||||
virtual Error _set_unix_permissions(const String &p_file, uint32_t p_permissions) override;
|
||||
|
||||
virtual void close() override;
|
||||
|
||||
FileAccessEncrypted() {}
|
||||
~FileAccessEncrypted();
|
||||
};
|
||||
|
|
|
|||
|
|
@ -71,6 +71,8 @@ public:
|
|||
virtual uint32_t _get_unix_permissions(const String &p_file) override { return 0; }
|
||||
virtual Error _set_unix_permissions(const String &p_file, uint32_t p_permissions) override { return FAILED; }
|
||||
|
||||
virtual void close() override {}
|
||||
|
||||
FileAccessMemory() {}
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -469,6 +469,15 @@ void FileAccessNetwork::configure() {
|
|||
GLOBAL_DEF(PropertyInfo(Variant::INT, "network/remote_fs/page_read_ahead", PROPERTY_HINT_RANGE, "0,8,1,or_greater"), 4);
|
||||
}
|
||||
|
||||
void FileAccessNetwork::close() {
|
||||
_close();
|
||||
|
||||
FileAccessNetworkClient *nc = FileAccessNetworkClient::singleton;
|
||||
nc->lock_mutex();
|
||||
nc->accesses.erase(id);
|
||||
nc->unlock_mutex();
|
||||
}
|
||||
|
||||
FileAccessNetwork::FileAccessNetwork() {
|
||||
FileAccessNetworkClient *nc = FileAccessNetworkClient::singleton;
|
||||
nc->lock_mutex();
|
||||
|
|
|
|||
|
|
@ -156,6 +156,8 @@ public:
|
|||
virtual uint32_t _get_unix_permissions(const String &p_file) override;
|
||||
virtual Error _set_unix_permissions(const String &p_file, uint32_t p_permissions) override;
|
||||
|
||||
virtual void close() override;
|
||||
|
||||
static void configure();
|
||||
|
||||
FileAccessNetwork();
|
||||
|
|
|
|||
|
|
@ -366,6 +366,10 @@ bool FileAccessPack::file_exists(const String &p_name) {
|
|||
return false;
|
||||
}
|
||||
|
||||
void FileAccessPack::close() {
|
||||
f = Ref<FileAccess>();
|
||||
}
|
||||
|
||||
FileAccessPack::FileAccessPack(const String &p_path, const PackedData::PackedFile &p_file) :
|
||||
pf(p_file),
|
||||
f(FileAccess::open(pf.pack, FileAccess::READ)) {
|
||||
|
|
|
|||
|
|
@ -178,6 +178,8 @@ public:
|
|||
|
||||
virtual bool file_exists(const String &p_name) override;
|
||||
|
||||
virtual void close() override;
|
||||
|
||||
FileAccessPack(const String &p_path, const PackedData::PackedFile &p_file);
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -336,6 +336,10 @@ bool FileAccessZip::file_exists(const String &p_name) {
|
|||
return false;
|
||||
}
|
||||
|
||||
void FileAccessZip::close() {
|
||||
_close();
|
||||
}
|
||||
|
||||
FileAccessZip::FileAccessZip(const String &p_path, const PackedData::PackedFile &p_file) {
|
||||
open_internal(p_path, FileAccess::READ);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -109,6 +109,8 @@ public:
|
|||
virtual uint32_t _get_unix_permissions(const String &p_file) override { return 0; }
|
||||
virtual Error _set_unix_permissions(const String &p_file, uint32_t p_permissions) override { return FAILED; }
|
||||
|
||||
virtual void close() override;
|
||||
|
||||
FileAccessZip(const String &p_path, const PackedData::PackedFile &p_file);
|
||||
~FileAccessZip();
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue