summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2017-02-16Correct hash behavior for floating point numbersHein-Pieter van Braam
This fixes HashMap where a key or part of a key is a floating point number. To fix this the following has been done: * HashMap now takes an extra template argument Comparator. This class gets used to compare keys. The default Comperator now works correctly for common types and floating point numbets. * Variant implements ::hash_compare() now. This function implements nan-safe comparison for all types with components that contain floating point numbers. * Variant now has a VariantComparator which uses Variant::hash_compare() safely compare floating point components of variant's types. * The hash functions for floating point numbers will now normalize NaN values so that all floating point numbers that are NaN hash to the same value. C++ module writers that want to use HashMap internally in their modules can now also safeguard against this crash by defining their on Comperator class that safely compares their types. GDScript users, or writers of modules that don't use HashMap internally in their modules don't need to do anything. This fixes #7354 and fixes #6947.
2017-02-16a ton of bug fixes to the rendererJuan Linietsky
2017-02-15Many fixes to make exported scenes work better, still buggy.Juan Linietsky
2017-02-15-begin of export work, not done yetJuan Linietsky
-fixes to make scenes exported from godot 2.x work
2017-02-12Merge pull request #7581 from Faless/v6_wild_bindRémi Verschelde
TCP/UDP listen bind to address and bugfixes
2017-02-09Add a simple signal handler for SIGCHLD on UnixHein-Pieter van Braam
This fixes #6631
2017-02-08basic contact shadows implementation, will most likely need some polishingJuan Linietsky
2017-02-06shadows were not working in-editor for nvidia, fixed nowJuan Linietsky
2017-02-06ability to adjust propagation in gi probeJuan Linietsky
2017-02-06Several bugfixes, improving the import workflowJuan Linietsky
2017-02-02Merge pull request #7689 from eska014/webgl2Rémi Verschelde
Enable WebGL2 in web export, start fixing build
2017-02-01Enable WebGL2 in web export, start fixing buildeska
Will not yet compile
2017-01-23Fix buffer size check in UDP socket.Fabio Alessandrelli
We were reserving 12 bytes from the buffer for ip, port, and length, but since IPv6 introduction we should be reserving 24 (IPv6 are 16 bytes)
2017-01-23Use default UDP ring buffer size of 65536 for clientsFabio Alessandrelli
We should probably create a specific function for setting the recv buffer anyway. UDP sockets does not need to bind (listen) to be able to call recvfrom. This is especially useful for clients who just call set_send_address and start communicating with a server.
2017-01-23Fix bug causing UDP socket to close after the first send if not listeningFabio Alessandrelli
The ring buffer for receiving packets was not resized in constructor
2017-01-23Avoid deadlock when writing/reading data on a connecting TCP socketFabio Alessandrelli
TCP status polling is always performed as non blocking. Trying to put a packet on a connecting socket will fail immediately.
2017-01-23Bind to IPv4 on OpenBSD when using wildcardFabio Alessandrelli
OpenBSD does not support binding on both IPv4 and IPv6 using the same socket
2017-01-23Remove set_ip_type from network classes (no longer needed)Fabio Alessandrelli
- TCP: - `listen` bind to wildcard "*" -> dual stack socket - `listen` bind to address -> socket from address type - `connect` -> resolve using best protocol (UNSPEC), socket from address type - UDP: - `listen` bind to wildcard "*" -> dual stack socket - `listen` bind to address -> socket from address type - `put_packet`/`put_var` -> resolve using TYPE_ANY (UNSPEC), socket from address type (to change socket type you must first call `close` it)
2017-01-23Implement UDP listen bind addressFabio Alessandrelli
2017-01-23Implement TCP Server bind addressFabio Alessandrelli
2017-01-23Convert validity checks of IP_Address to is_valid method.Fabio Alessandrelli
2017-01-23Avoid calling close when polling a UDP peer without socketFabio Alessandrelli
2017-01-21WIP new AudioServer, with buses, effects, etc.Juan Linietsky
2017-01-16Overloaded basic math funcs (double and float variants). Use real_t rather ↵Ferenc Arn
than float or double in generic functions (core/math) whenever possible. Also inlined some more math functions.
2017-01-16Adapt platforms to AudioServer refactoringRémi Verschelde
Fixes compilation on Windows and likely other platforms (at least as far as AudioServer changes were concerned), though they were not tested.
2017-01-16Working on compile issues for iOSBastiaanOlij
2017-01-16Style: Various fixes to play nice with clang-formatRémi Verschelde
2017-01-16Style: Fix statements ending with ';;'Rémi Verschelde
2017-01-15Oops! Audio engine has vanished :DJuan Linietsky
2017-01-14no more errors related to missing GlobalConfig::Get (or so I hope)Juan Linietsky
2017-01-15Merge pull request #7513 from djrm/compilation_fixRémi Verschelde
Matrix32 -> Transform2D
2017-01-15Merge pull request #7510 from Faless/tcp_connectRémi Verschelde
TCP connect always opens the correct socket type
2017-01-14StreamPeerWinsock: Fix changed declarationsRémi Verschelde
Bug introduced in dcb95ec1473eff3f455909cd81c3cd50b1e1159b.
2017-01-14DirAccessWindows: Fix list_dir_begin return typeRémi Verschelde
Fixes bug introduced in da4170540cbe3dcec4855ddbb59edf1abd7cf9b4.
2017-01-14removed duplicated functions in class hierarchy that were bound more than onceJuan Linietsky
added a check to detect this case in the future
2017-01-14Style: Fix whole-line commented codeRémi Verschelde
They do not play well with clang-format which aligns the `//` part with the rest of the code block, thus producing badly indented commented code.
2017-01-14Fixed dir access return value, changed it to Error like all other funcsJuan Linietsky
2017-01-14UDP.set_send_address to UDP.set_dest_addressJuan Linietsky
2017-01-13TCP connect always opens correct socket typeFabio Alessandrelli
TCP client connections does not need to rely on ipv6 dual stack sockets
2017-01-13Matrix32 -> Transform2DDaniel J. Ramirez
2017-01-12Improvements to scons defined WINVER/_WIN32_WINNTFabio Alessandrelli
2017-01-12Unify naming of blendshape / morphtarget into just "Blend Shape"Juan Linietsky
2017-01-11Type renames:Juan Linietsky
Matrix32 -> Transform2D Matrix3 -> Basis AABB -> Rect3 RawArray -> PoolByteArray IntArray -> PoolIntArray FloatArray -> PoolFloatArray Vector2Array -> PoolVector2Array Vector3Array -> PoolVector3Array ColorArray -> PoolColorArray
2017-01-10Merge pull request #7425 from lonesurvivor/masterRémi Verschelde
Fix for the huge audio latency (>200 ms) for the …
2017-01-09Windows: Workaround missing includes in MinGW-w64 < 4Rémi Verschelde
The MinGW-w64 version we have on our Travis build environment (Ubuntu 12.04, mingw-w64 2.0.1, gcc 4.6) is old and has some missing includes in the dependencies of the `tcpmib.h` header [0] [1] [2]. Those were not triggered before 6323779596dea0db7f58afef7d3d3d5588ef20cb probably due to conflicting WINVER definitions which prevented triggering the code specific to >= 0x0600 (Vista). We ensure it won't be triggered by defining the _WIN32_WINNT macro to Windows XP compatibility.
2017-01-08Windows: Define _WIN32_WINRT to 0x0600 (Vista)Rémi Verschelde
Passed as a compiler define to be sure it is always define before windows.h is loaded. This means that Godot officially requires Vista API or later, it will not work on Windows XP or earlier. Also fix a bogus check for Windows 7 API.
2017-01-08Use more compatible initializarion of RWLockPosixJuan Linietsky
2017-01-08Added missing readers writers lock to windows, should compile and run again..Juan Linietsky
2017-01-07Memory pool vectors (DVector) have been enormously simplified in code, and ↵Juan Linietsky
renamed to PoolVector
2017-01-06Move glad files to thirdparty dirRémi Verschelde