### Godot version

4.0.beta10

### System information

Windows 10, 64bit

### Issue description

The title says it all.
Opened in compression mode, whether read or write and whether the file already exists or not, `get_path` contains an empty string. This is also the case in C#.
However, if the file is opened without compression, get_path contains the absolute file path to the file as expected.
It doesn't matter whether an internal res:// path or an external system path is used.

### Steps to reproduce

```
var file = FileAccess.open_compressed("res://file.txt", FileAccess.WRITE")
prints("get_path():", file.get_path())
```
output: `get_path():`

```
var file = FileAccess.open("res://file.txt", FileAccess.WRITE)
prints("get_path():", file.get_path())
```
output: `get_path(): res://file.txt`

 
_or under C#:_
```
using var file = FileAccess.OpenCompressed("res://test.txt", FileAccess.ModeFlags.Write);
GD.PrintS("GetPath():", file.GetPath());
```
output: `GetPath():`

### Minimal reproduction project

N/A
buffer.clear();
		writing = true;
		write_pos = 0;
		write_buffer_size = 256;
		buffer.resize(256);
		write_max = 0;
		write_ptr = buffer.ptrw();
		
	} else {
		char rmagic[5];
		f->get_buffer((uint8_t *)rmagic, 4);
		rmagic[4] = 0;
		err = ERR_FILE_UNRECOGNIZED;
		if (magic != rmagic || (err = open_after_magic(f)) != OK) {
			f.unref();
			return err;
		}
	}
	return OK;
}
void FileAccessCompressed::_close() {
	if (f.is_null()) {
		return;
	}
	if (writing) {
		
		CharString mgc = magic.utf8();
		f->store_buffer((const uint8_t *)mgc.get_data(), mgc.length()); 
		f->store_32(cmode); 
		f->store_32(block_size);