Commit Graph

516 Commits

Author SHA1 Message Date
Rémi Verschelde
d6176db271 Unexpose subclasses of ResourceFormatLoader and -Saver
ResourceFormatLoader and ResourceFormatSaver are meant to be overridden
to add support for different formats in ResourceLoader and ResourceSaver.
Those should be exposed as they can be overridden in plugins.

On the other hand, all predefined subclasses of those two base classes
are only meant to register support for new file and resource types, but
should not and cannot be used directly from script, so they should not
be exposed.

Also unexposed ResourceImporterOGGVorbis (and thus its base class
ResourceImporter) which are editor-only.
2019-06-18 17:56:23 +02:00
Rémi Verschelde
971b5160c6
Merge pull request #29306 from qarmin/small_code_fixes
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-12 12:49:21 +02:00
Rémi Verschelde
6d16f2f053 Fix error macro calls not ending with semicolon
It's not necessary, but the vast majority of calls of error macros
do have an ending semicolon, so it's best to be consistent.
Most WARN_DEPRECATED calls did *not* have a semicolon, but there's
no reason for them to be treated differently.
2019-06-11 14:49:34 +02:00
Hein-Pieter van Braam-Stewart
64626f682e Fix a random SSL crash I saw once.
I don't know why this happened, I was debugging another issue. This
should take care of it though.
2019-06-06 13:46:54 +00:00
qarmin
8245db869f Small fixes to unrechable code, possibly overflows, using NULL pointers 2019-06-03 21:52:50 +02:00
Hugo Locurcio
cbd31d9f0b
Fix errors when attempting to set UNIX permissions when unavailable
This makes exporting from Windows to Linux work again.

This closes #29416.
2019-06-03 14:35:33 +02:00
Rémi Verschelde
0411ab56f5
Merge pull request #25148 from capnm/capnm-print-corrupt-image-path
Print the path of a corrupt image
2019-05-30 14:52:55 +02:00
qarmin
a32f020b53 Properly unlock mutex 2019-05-30 10:28:03 +02:00
Rémi Verschelde
02bac239d9 FileAccessEncrypted: Be more explicit on decryption failure
Fixes #24505.
Supersedes #25278.
2019-05-29 17:57:37 +02:00
Rémi Verschelde
9065cc2402
Merge pull request #29011 from zann1x/master
Initialize padding on PoolByteArray serialization
2019-05-21 10:07:26 +02:00
Rémi Verschelde
6920c82742 Style: Fix issues with clang-format 8.0 2019-05-20 13:51:51 +02:00
Lukas Zanner
c35f4e8808 Initialize padding on PoolByteArray serialization 2019-05-19 19:09:16 +02:00
Rémi Verschelde
e0574e1d98 Fix typos with codespell
Using codespell 1.15.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
doubleclick
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-05-19 13:10:35 +02:00
Fabio Alessandrelli
76f262d2f4 Better handle some self-RSET/RPC in MultiplayerAPI
Allow calling yourself via RPC/RSET if the mode allows it.
Better error messages when you are not allowed to call yourself.
2019-05-12 11:37:26 +02:00
Fabio Alessandrelli
bba77fe387 Avoid _can_call_mode resetting error message in MultiplayerAPI 2019-05-08 22:14:41 +02:00
Juan Linietsky
cd4449e7ab Add FileAccess::set_unix_permissions for Unix platforms 2019-04-07 15:45:30 -03:00
Fabio Alessandrelli
175942dcd1
Merge pull request #24951 from Mr-Slurpy/local-rpc-sender-id-fix
Sender network id is now set to local network id for local rpc calls.
2019-04-20 13:39:05 +02:00
Juan Linietsky
04847ef5f9 Added ability for multiple images to be imported as an atlas
This adds support for groups in the import system, which point to a single file.
Add property hint for saving files in file field
2019-04-19 15:56:34 -03:00
Rémi Verschelde
20265879e2 Compression: Set Zstd max window size via public parameter
`ZSTD_DCtx_setMaxWindowSize` is still part of the experimental API
(thus unexposed in the shared library). Upstream examples seem to
use `ZSTD_d_windowLogSize` instead, so it's probably what we should
use too.

Fixes #17374.
Distro packagers can now unbundle Zstd.
2019-04-18 13:47:42 +02:00
Daniel Eliasinski
0606062268 Sender network id is now set to local network id for local rpc calls. 2019-04-16 21:53:09 -04:00
Rémi Verschelde
c8994b56f9 Style: Apply new changes from clang-format 8.0
It seems to stay compatible with formatting done by clang-format 6.0 and 7.0,
so contributors can keep using those versions for now (they will not undo those
changes).
2019-04-09 17:09:48 +02:00
Rémi Verschelde
cc349336e7 Revert "Properly explain RPC/RSET mode failure."
This reverts commit 95ad747dea.
It introduced regressions, see #27655.
2019-04-05 18:18:08 +02:00
Rémi Verschelde
fc370b3feb Fix -Wimplicit-fallthrough warnings from GCC 8
Adds `FALLTHROUGH` macro to specify when a fallthrough is intentional.
Can be replaced by `[[fallthrough]]` if/when we switch to C++17.

The warning is now enabled by default for GCC on `extra` warnings level
(part of GCC's `-Wextra`). It's not enabled in Clang's `-Wextra` yet,
but we could enable it manually once we switch to C++11. There's no
equivalent feature in MSVC for now.

Fixes #26135.
2019-04-05 15:14:53 +02:00
Fabio Alessandrelli
95ad747dea Properly explain RPC/RSET mode failure.
_can_call_mode used to call is_network_master/get_network_master
internally.
This would reset any potential last error set via ERR_EXPLAIN,
preventing it from being displayed correctly.
_can_call_mode now expects the node master ID to be passed instead.
2019-04-03 21:55:42 +02:00
marxin
e7f22ebdcd Enable warnings=extra on clang and GCC testers.
And remove 2 warnings from warnings=extra.
2019-04-02 17:14:47 +02:00
Fabio Alessandrelli
393e62b98a Add object encoding param to serialization methods
Network peers get_var/put_var
File get_var/store_var
GDScript/Mono/VisualScript bytes2var/var2bytes
Add MultiplayerAPI.allow_object_decoding member which deprecates PacketPeer.allow_object_decoding.

Break ABI compatibaility (API compatibility for GDNative).
2019-04-01 15:53:19 +02:00
Fabio Alessandrelli
53ab3a1ba9 Multiplayer API now respects allow_object_decoding
Add doc about allow_object_decoding in PacketPeer
2019-04-01 15:53:08 +02:00
Fabio Alessandrelli
e61a074a8e Use same boolean for objects encode and decode.
In a very unintuitive move encode needed false to encode an object,
decode needed true to decode it.
They now need the same value: `true`.
2019-03-28 10:43:34 +01:00
Rémi Verschelde
aff3dd36ba
Merge pull request #25495 from IronicallySerious/fix-expand-macros
Fix parameterised macros in core. Addresses #25488
2019-03-16 11:20:52 -07:00
George Marques
25f9aee005
Allow class_name scripts to have nested inheritance 2019-03-09 00:47:27 -03:00
Juan Linietsky
ffd44530fb Make sure ResurceLoader.exists works on imported files, fixes #23555 2019-03-04 21:01:21 -03:00
Juan Linietsky
e653c79ef7 Better warnings when resources can't be saved. Fixes #26531 2019-03-04 11:06:49 -03:00
Juan Linietsky
a5370b1b1b -Fix problem of order of import plugins, closes #26340
-Ensure resource previewer does not start until first import is done
2019-02-27 14:11:17 -03:00
Rémi Verschelde
372152220b
Merge pull request #26159 from marxin/fix-Wsuggest-attribute=format
Fix -Wsuggest-attribute=format warnings.
2019-02-27 09:23:26 +01:00
Rémi Verschelde
426a6fdc17
Merge pull request #26134 from marxin/fix-Wsign-compare
Fix -Wsign-compare warnings.
2019-02-27 09:22:47 +01:00
Rémi Verschelde
0ba75c195e Fix GCC 5 build after #26331 and cleanup style
Also cleanup after 01a3dd3.
2019-02-27 09:01:24 +01:00
marxin
e5f665c718 Fix -Wsign-compare warnings.
I decided to modify code in a defensive way. Ideally functions
like size() or length() should return an unsigned type.
2019-02-27 07:45:57 +01:00
marxin
aff84ec55d Fix -Wsuggest-attribute=format warnings. 2019-02-27 06:56:50 +01:00
Juan Linietsky
f669ebeeaf -Properly handle missing ETC support on export
-Added ability for resource importers to save metadata
-Added ability for resource importers to validate depending on project settings
2019-02-26 18:45:06 -03:00
Juan Linietsky
3ea04c1366 Prevent circular references to scene being saved, fixes #24384 2019-02-24 10:48:38 -03:00
Juan Linietsky
8b231b96e3 Implement a cleaner (and better) way to save imagedata from ImageTexture, fixes #18801 2019-02-21 20:49:42 -03:00
marxin
8d51618949 Add -Wshadow=local to warnings and fix reported issues.
Fixes #25316.
2019-02-20 19:44:12 +01:00
Fabio Alessandrelli
0e5655694c Fix HTTPClient keep alive with chunked encoding.
We need to consume the trailer part and final CRLF after last chunk
as per RFC 7230 section 4.1:

```
chunked-body   = *chunk
                 last-chunk
                 trailer-part
                 CRLF
```

We do not return the trailer part, just consume it allowing following
requests to work as expected when using keep alive.
2019-02-20 05:13:51 +01:00
Fabio Alessandrelli
10e4821260 HTTPClient read until EOF fixes 2019-02-20 03:06:02 +01:00
IronicallySerious
4121df235e Fix parameterised macros in core. Addresses #25488
This adds the saves the programmer of doing something like SWAP(x++, y--)
and getting the wrong result unless the parameters are evaluated
before use.
2019-02-18 22:08:42 +05:30
Juan Linietsky
1f9c54bd55 Make resource loader cycle checker work on a per-thread basis.
This removes editor errors saying cycles existed when the thumbnailer was running.
2019-02-16 17:39:06 -03:00
Fabio Alessandrelli
673caa5f46 Fix keep-alive without header in HTTP client 2019-02-16 17:05:13 +01:00
Rémi Verschelde
b7cc2bb1e2 Core: Ensure classes match their header filename
Also drop some unused files.

Renamed:
- `core/dvector.h` -> `pool_vector.h`
- `core/io/resource_import.h` -> `resource_importer.h`
- `core/sort.h` -> `sort_array.h`
- `core/string_db.h` -> `string_name.h`

Dropped:
- `core/allocators.h`
- `core/os/shell.h`
- `core/variant_construct_string.cpp`
2019-02-12 13:34:25 +01:00
Juan Linietsky
11642b92d1 Avoid cyclic resource loading of any type, fixes #22673 2019-01-27 19:24:55 -03:00
Rémi Verschelde
c3b0ee5941 Fix code style issues 2019-01-26 22:35:31 +01:00