Loic Blot [Sat, 20 Feb 2016 08:44:22 +0000 (09:44 +0100)]
Little collision.cpp cleanups
gregorycu [Tue, 27 Jan 2015 12:33:54 +0000 (23:33 +1100)]
Fix jumping at node edge
ShadowNinja [Sat, 20 Feb 2016 00:55:31 +0000 (19:55 -0500)]
Don't print locale directory error message when GetText is disabled
Also, downgrade the error to a warning.
Jeija [Fri, 19 Feb 2016 20:14:38 +0000 (21:14 +0100)]
Ignore spaces in secure.trusted_mods setting
RealBadAngel [Thu, 18 Feb 2016 16:17:17 +0000 (17:17 +0100)]
Minimap: show player markers
RealBadAngel [Fri, 19 Feb 2016 13:13:21 +0000 (14:13 +0100)]
Camera: Don't count camera offset twice for Nametagged CAOs
ShadowNinja [Thu, 18 Feb 2016 21:06:07 +0000 (16:06 -0500)]
Require request_insecure_environment to be called from the mod's main scope
Previously you could steal a secure environment from a trusted mod by wrapping
request_insecure_environment with some code like this:
local rie_cp = minetest.request_insecure_environment
local stolen_ie
function minetest.request_insecure_environment()
local ie = rie_cp()
stolen_ie = stolen_ie or ie
return ie
end
paramat [Wed, 17 Feb 2016 02:39:21 +0000 (02:39 +0000)]
Clientmap: Define p_nodes_min/max as v3s32 instead of v3s16
'cam_pos_nodes -/+ box_nodes_d' can exceed the range of v3s16
when a player is near the world edge using a large view range
This previously caused world to disappear
Create new function getBlocksInViewRange() called from
updateDrawList() and renderMap()
Correct code style throughout updateDrawList() and renderMap()
RealBadAngel [Sat, 13 Feb 2016 22:39:37 +0000 (23:39 +0100)]
HOTFIX: fix too agressive block culling
RealBadAngel [Mon, 15 Feb 2016 13:01:01 +0000 (14:01 +0100)]
Move object nametags to camera
est31 [Tue, 16 Feb 2016 22:58:30 +0000 (23:58 +0100)]
Clientiface: remove "value is dummy" from docs
Commit
6a1670dbc31cc0e44178bbd9ad34ff0d5981a060 "Migrate to STL containers/algorithms."
has replaced core::map<T, bool> with std::set<T>, but didn't update
the accompanying comment saying "value is dummy". This happened at
two places.
RealBadAngel [Tue, 16 Feb 2016 02:51:57 +0000 (03:51 +0100)]
Mapblock mesh: Eliminate meshgen lags
RealBadAngel [Fri, 12 Feb 2016 11:25:20 +0000 (12:25 +0100)]
Use vertices with tangents only when its needed.
Loic Blot [Sun, 14 Feb 2016 16:45:06 +0000 (17:45 +0100)]
Player::accelerateHorizontal/Vertical should be member of LocalPlayer
RealBadAngel [Sun, 14 Feb 2016 08:00:34 +0000 (09:00 +0100)]
Use proper variable types for uniform sampler layers
RealBadAngel [Sat, 13 Feb 2016 21:08:58 +0000 (22:08 +0100)]
Formspec: fix broken irrlicht 1.7 build
Fixes #3701.
RealBadAngel [Tue, 9 Feb 2016 09:43:38 +0000 (10:43 +0100)]
Formspec: recreate item_image_button pressed state for its image and label
est31 [Sat, 13 Feb 2016 00:45:06 +0000 (01:45 +0100)]
Remove unused 'm_selection_active' field
Thanks @ExcaliburZero for noticing. Fixes #3698.
nerzhul [Thu, 11 Feb 2016 14:21:21 +0000 (15:21 +0100)]
v2d & aabbox3d<f32> & sky cleanups
* Sky: rename Box => m_box and inline getBoundingBox
* Uniformize aabbox3d<f32> to aabb3f
Loic Blot [Wed, 10 Feb 2016 23:10:05 +0000 (00:10 +0100)]
Drop luaentity_common.h which is not included anywhere
RealBadAngel [Thu, 11 Feb 2016 03:57:01 +0000 (04:57 +0100)]
Use single box for halo mesh
RealBadAngel [Thu, 11 Feb 2016 06:22:15 +0000 (07:22 +0100)]
Set proper GLSL pixel shader version
RealBadAngel [Wed, 10 Feb 2016 03:27:45 +0000 (04:27 +0100)]
Dump shader programs on compile errors
paramat [Thu, 11 Feb 2016 03:40:50 +0000 (03:40 +0000)]
Documentation: Remove now unused 'vertical spawn range'
Diego Martinez [Wed, 10 Feb 2016 00:46:22 +0000 (21:46 -0300)]
Initialize facedir and wallmounted tables only once.
This makes the functions a bit faster since they don't
have to recreate the tables every invocation, and makes
the code more readable.
Also, document `wallmounted_to_dir`.
The function was implemented but not documented in `lua_api.txt`.
Kahrl [Tue, 9 Feb 2016 07:56:40 +0000 (08:56 +0100)]
Log /clearobjects mode
Kahrl [Mon, 8 Feb 2016 21:20:04 +0000 (22:20 +0100)]
Add '/clearobjects quick'
Auke Kok [Sun, 24 Jan 2016 03:53:27 +0000 (19:53 -0800)]
Fix backface culling when connecting to new servers.
Introduce a new contentfeatures version (8). When clients
connect using v27 protocol version, they can assume that
the tiledef.backface_culling is trustable, but if clients
connect to servers providing contentfeatures version 7,
then the v27 clients know that backface culling settings
provided by the server in tiledefs are bogus for mesh,
plantlike, firelike or liquid drawtype nodes.
thanks to hmmmm, est31, nerzhul.
Tested on new client - new server, new client - old server
old client - new server.
Loic Blot [Tue, 9 Feb 2016 22:46:20 +0000 (23:46 +0100)]
Fix inverted conditions in shader.cpp
Loic Blot [Tue, 9 Feb 2016 22:03:54 +0000 (23:03 +0100)]
shader.cpp: don't test twice if shader programs are present
Also use string::empty method, it is better than comparing with empty strings.
RealBadAngel [Tue, 9 Feb 2016 05:06:10 +0000 (06:06 +0100)]
FormSpec: Add StaticTextSpec and superimpose over item image buttons
RealBadAngel [Mon, 25 Jan 2016 12:33:22 +0000 (13:33 +0100)]
Filmic HDR tone mapping
Kahrl [Sun, 7 Feb 2016 03:24:24 +0000 (04:24 +0100)]
Remove ClientMap::m_camera_mutex
All places that lock this mutex are only called by the main thread:
ClientMap::updateCamera(), ClientMap::updateDrawList(), ClientMap::renderMap(), ClientMap::renderPostFx().
paramat [Thu, 4 Feb 2016 01:03:31 +0000 (01:03 +0000)]
FindSpawnPos: Let mapgens decide what spawn altitude is suitable
To avoid spawn search failing in new specialised mapgens
Increase spawn search range to 4000 nodes
Add getSpawnLevelAtPoint() functions to EmergeManager, class Mapgen
and all mapgens
Remove getGroundLevelAtPoint() functions from all mapgens except mgv6
(possibly to be re-added later in the correct form to return actual
ground level)
Make mgvalleys flag names consistent with other mapgens
Remove now unused 'vertical spawn range' setting
RealBadAngel [Mon, 8 Feb 2016 00:40:05 +0000 (01:40 +0100)]
Use inventory_image in the first place for inventory item mesh
RealBadAngel [Sun, 7 Feb 2016 03:08:43 +0000 (04:08 +0100)]
Cleanup selection mesh code, add shaders for halo and selection boxes
Diego Martinez [Thu, 4 Feb 2016 12:58:44 +0000 (09:58 -0300)]
builtin: Fix `print` crashing on nil "holes".
The engine implementation of `print` packs the varargs into a
table and passes the table directly to `table.concat`. If you
pass any value not supported by `table.concat` (particularly
`nil`), the server crashes. This is unexpected behavior, as
`print` is supposed to be able to work with anything.
This patch changes the implementation so it first converts
all arguments using `tostring`, which fixes the issue and
makes the custom `print` function compatible with the stock
Lua behavior.
est31 [Sun, 7 Feb 2016 19:27:50 +0000 (20:27 +0100)]
small drawItemStack cleanup
-> Replace the three bool params with an enum
-> Add struct for the static content, leads to less repetition
-> cache enable_animations setting
RealBadAngel [Sun, 24 Jan 2016 13:19:17 +0000 (14:19 +0100)]
Use meshes to display inventory items
RealBadAngel [Sat, 6 Feb 2016 04:49:12 +0000 (05:49 +0100)]
Use tangent space meshes only when shaders are enabled
Splizard [Wed, 3 Feb 2016 06:09:13 +0000 (19:09 +1300)]
Add admin command which says who the administator is for the server.
Pavel Puchkin [Fri, 29 Jan 2016 14:15:58 +0000 (16:15 +0200)]
Implement OSX Travis builds
Duane Robertson [Mon, 1 Feb 2016 08:09:43 +0000 (02:09 -0600)]
Mgvalleys: fix riverbeds below sea level
Stop riverbeds from forming plateaus under sea. Minor corrections to
random lava/water placement.
paramat [Sun, 31 Jan 2016 04:23:46 +0000 (04:23 +0000)]
Mgv5/v7/flat/fractal: Move tunnel noise calculation into generateCaves
Tunnel 3D noises are only calculated when solid terrain is present
in mapchunk, avoiding large amounts of unnecessary calculations
Change 'int' to 's16' in calculateNoise
Change 'i' to 'vi' for voxelmanip indexes for consistency
Keep 'u32 index3d' local to a smaller part of tunnel code
Mgv7: Don't call CaveV7 if no solid terrain in mapchunk
Give 'open' bool a more descriptive name
Duane Robertson [Sun, 31 Jan 2016 08:59:15 +0000 (02:59 -0600)]
Mgvalleys: use standard caves
Replace simple caves with V5 caves, adding unpredictable water and lava
settings and massive caves based on subterrain. Remove fast terrain mode
and accompanying settings. Remove superfluous temperature/humidity
settings. Remove lava/water height setting. Fix errors in humidity
handling and remove humidity_break_point setting. Move cave noises to
generateCaves. Fix minor formatting/naming issues and use
MYMAX/MYMIN/myround.
Pavel Puchkin [Fri, 29 Jan 2016 14:43:29 +0000 (16:43 +0200)]
Fix OSX building issue caused by
ad884f2
est31 [Sun, 24 Jan 2016 23:06:01 +0000 (00:06 +0100)]
Don't pass non-const references to collision methods
Non const references cause a lot of confusion with behaviour of code,
and are disallowed by minetest style guide.
Auke Kok [Thu, 21 Jan 2016 09:07:38 +0000 (01:07 -0800)]
New timer design.
I could honestly not make much sense of the timer implementation
that was here. Instead I've implemented the type of timer algorithm
that I've used before, and tested it instead.
The concept is extremely simple: all timers are put in an ordered
list. We check every server tick if any of the timers have
elapsed, and execute the function associated with this timer.
We know that many timers by themselves cause new timers to be
added to this list, so we iterate *backwards* over the timer
list. This means that new timers being added while timers are
being executed, can never be executed in the same function pass,
as they are always appended to the table *after* the end of
the table, which we will never reach in the current pass over
all the table elements.
We switch time keeping to minetest.get_us_time(). dtime is
likely unreliable and we have our own high-res timer that we
can fix if it is indeed broken. This removes the need to do
any sort of time keeping.
Auke Kok [Sun, 24 Jan 2016 07:06:26 +0000 (23:06 -0800)]
Clocksource: use a better clock if available.
clock_gettime() is a far better clock than gettimeofday().
Even better than clock_gettime() is that you can select either
CLOCK_MONOTONIC, or even CLOCK_MONOTONIC_RAW. These clocks offer
high precision time. And the _RAW variant will never roll back
due to NTP drift or daylight savings, or otherwise.
I've adjusted this code to select the right clock method auto-
matically based on what's available in the OS. This means that
if you're running a very old linux version, MacOS or other,
you will automatically get the best clocksource available.
I've tested all Linux clocksources by selectively compiling and
running a 10k+ timer test suite. In all cases I confirmed that
the 3 POSIX Linux clocksources worked properly, and were
selected properly.
I've modified the OS X compile path to use the high-res clock
source for all time functions, but I can't confirm it works or
that it compiles.
As for WIN32, I confirmed that the used clocksource is indeed
a Monotonic clocksource, so good news: that code section appears
to be exactly what it should be.
est31 [Thu, 28 Jan 2016 22:53:58 +0000 (23:53 +0100)]
Don't print whole json data buffer to errorstream on error
`errorstream` must not be overly verbose as clientside it is directly printed
onto the ingame chat window. These days, the serverlist can contain > 200k bytes,
so better print it to warningstream if the data buffer is too long.
Paolo DGZ [Sun, 24 Jan 2016 14:00:55 +0000 (15:00 +0100)]
Translated using Weblate (Italian)
Currently translated at 52.0% (410 of 787 strings)
Kisbenedek Márton [Sun, 24 Jan 2016 23:59:19 +0000 (00:59 +0100)]
Translated using Weblate (Hungarian)
Currently translated at 32.4% (255 of 787 strings)
Tobyplowy [Sat, 23 Jan 2016 03:35:25 +0000 (04:35 +0100)]
Translated using Weblate (Dutch)
Currently translated at 95.5% (752 of 787 strings)
Ian giestas pauli [Thu, 14 Jan 2016 19:25:46 +0000 (20:25 +0100)]
Translated using Weblate (Portuguese (Brazil))
Currently translated at 41.6% (328 of 787 strings)
Ian giestas pauli [Thu, 14 Jan 2016 17:32:23 +0000 (18:32 +0100)]
Translated using Weblate (Portuguese (Brazil))
Currently translated at 26.6% (210 of 787 strings)
Ian giestas pauli [Thu, 14 Jan 2016 17:20:14 +0000 (18:20 +0100)]
Translated using Weblate (Portuguese)
Currently translated at 23.6% (186 of 787 strings)
Rui [Thu, 14 Jan 2016 07:53:58 +0000 (08:53 +0100)]
Translated using Weblate (Japanese)
Currently translated at 43.4% (342 of 787 strings)
Rui [Wed, 13 Jan 2016 07:54:13 +0000 (08:54 +0100)]
Translated using Weblate (Japanese)
Currently translated at 42.0% (331 of 787 strings)
Peter Mikkelsen [Wed, 13 Jan 2016 08:23:08 +0000 (09:23 +0100)]
Translated using Weblate (Danish)
Currently translated at 30.1% (237 of 787 strings)
Jun Zhang [Wed, 30 Dec 2015 15:01:36 +0000 (16:01 +0100)]
Translated using Weblate (Chinese (China))
Currently translated at 34.8% (274 of 787 strings)
Diego Martinez [Mon, 7 Dec 2015 03:49:01 +0000 (00:49 -0300)]
Fix world config menu ignoring `name` in `mod.conf`.
Auke Kok [Thu, 21 Jan 2016 22:40:24 +0000 (14:40 -0800)]
Backface culling: Ignore setting in tiledef from old servers.
Outdated servers are always sending tiledefs with culling
enabled no matter what, as the value was previously entirely
ignored.
To compensate, we must (1) detect that we're running against
an old server with a new client, and (2) disable culling for
mesh, plantlike, firelike and liquid draw types no matter what
the server is telling us.
In order to achieve this, we need to bump the protocol version
since we cannot rely on the tiledef version, and test for it
being older. I've bumped the protocol version, although that
should have likely happened in the actual change that introduced
the new backface_culling PR #3578. Fortunately that's only 2
commits back at this point.
We also explicitly test for the drawtype to assure we are not
changing the culling value for other nodes, where it should
remain enabled.
This was tested against various pub servers, including 0.4.13 and
0.4.12.
Fixes #3598
est31 [Sat, 23 Jan 2016 05:26:58 +0000 (06:26 +0100)]
Fix compilation warning if compiling for android with c++11
RealBadAngel [Thu, 21 Jan 2016 15:04:41 +0000 (16:04 +0100)]
Fix texture tear issue
est31 [Sat, 23 Jan 2016 04:45:00 +0000 (05:45 +0100)]
Fix C++11 compilability
Previous commits broke it... :(
paramat [Sun, 17 Jan 2016 05:11:35 +0000 (05:11 +0000)]
Liquid flow: Prevent water spreading on ignore
Auke Kok [Tue, 19 Jan 2016 04:44:46 +0000 (20:44 -0800)]
Allow per-tiles culling.
Backface culling is enabled by default for all tiles, as this
is how the lua parser initializes each tiledef. We revert to
always using the value from the tiledef since it is always
read and serialized.
Mods that wish to enable culling for e.g. mesh nodes, now can
specify the following to enable backface culling:
tiles = {{ name = "tex.png", backface_culling = true }},
Note the double '{' and use of 'name' key here! In the same
fashion, backface_culling can be disabled for any node now.
I've tested this against the new door models and this properly
allows me to disable culling per node. I've also tested this
against my crops mod which uses mesh nodes where culling needs
to be disabled, and tested also with plantlike drawtype nodes
where we want this to continue to be disabled.
No default setting has changed. The defaults are just migrated
from nodedef.cpp to c_content.cpp.
kwolekr [Sat, 14 Nov 2015 08:07:21 +0000 (03:07 -0500)]
EmergeManager: Do not queue duplicate block requests
Kahrl [Tue, 19 Jan 2016 09:15:01 +0000 (10:15 +0100)]
Fix Settings::remove() always returning true
RealBadAngel [Fri, 8 Jan 2016 14:59:36 +0000 (15:59 +0100)]
Show infotext with description for item entities
Duane Robertson [Mon, 18 Jan 2016 07:55:08 +0000 (01:55 -0600)]
Correct overflowing rivers in Valleys mapgen.
RealBadAngel [Mon, 18 Jan 2016 05:08:54 +0000 (06:08 +0100)]
Fix wield item glitch
Pinky Snow [Sat, 16 Jan 2016 10:23:00 +0000 (05:23 -0500)]
corrected minetest.pos_to_string()
corrected this bit reflect the function properly.
Rogier [Fri, 8 Jan 2016 08:29:39 +0000 (09:29 +0100)]
Fix error message in settings tab overlapping 'save' button
The save button is now fully functional again when an error message
is shown.
After an invalid value is entered in the settings tab dialog, the GUI
label for the error message that is shown was partly overlapping the
'save' button, so that the top half of the button could not be clicked
on.
Duane Robertson [Sat, 16 Jan 2016 09:53:02 +0000 (03:53 -0600)]
Prevent spawning in rivers with valleys mapgen. Remove unecessary whitespace.
sfan5 [Fri, 15 Jan 2016 12:40:59 +0000 (13:40 +0100)]
Make ItemStack:set_count(0) clear the item stack
fixes minetest/minetest_game#786
Kahrl [Fri, 15 Jan 2016 01:16:21 +0000 (02:16 +0100)]
Make all mesh manipulators in mesh.cpp work with any vertex type
cloneMesh() has to use a switch in order to create a different
mesh buffer type depending on vertex type. (Credit: the new cloneMesh
was written by RealBadAngel.)
To avoid repetitive code, all other methods use getVertexPitchFromType()
to automatically adapt the indexing to the vertex type at runtime.
Duane Robertson [Thu, 14 Jan 2016 03:57:02 +0000 (21:57 -0600)]
Add Valleys mapgen.
paramat [Mon, 11 Jan 2016 05:46:41 +0000 (05:46 +0000)]
Mgv7/flat/fractal: Place biome top node on tunnel entrance floor
paramat [Mon, 11 Jan 2016 00:30:03 +0000 (00:30 +0000)]
Mapgen: Various fixes and improvements
Lua_api.txt: Document 'minetest.registered_biomes'
Minimal: Remove 'mapgen_air' alias
Cavegen: Add fallback node for 'mapgen_ice'
Dungeongen: Add fallback node for 'mapgen_river_water_source'
Mgv5: Remove unnecessary '#include util/directiontables.h'
Add missing 'this->'s in makeChunk()
Mgv6: Edit empty line formatting
Remove leading spaces in makeChunk()
Add missing spaces after 'for' and 'if'
Mgv7: Edit empty line formatting
paramat [Sun, 10 Jan 2016 03:27:32 +0000 (03:27 +0000)]
Mgflat: Set blank default spflags. Unhide
Rogier [Thu, 7 Jan 2016 19:59:35 +0000 (20:59 +0100)]
Fix the checking of flags values in the settings tab
Changes:
- Accept setting an empty flags-type value in the settings tab
if the variable specification permits it
- Don't accept substrings of flag values
E.g. with values: 'one,two,three', 'hree', 'w', etc. used to
be accepted. Not any more
- Don't accept flags with random pattern-matching special characters
E.g. with values: 'one,two,three', 'on.', '(o)[n]e*' etc. used
to be accepted. Not any more.
Rogier [Thu, 7 Jan 2016 11:33:26 +0000 (12:33 +0100)]
Improve parsing of setting types from settingtypes.txt for settings tab
- Accept numbers prefixed with '+'
- Accept multiple spaces instead of just a single one where spaces are expected
- Allow flags to have an empty default value
ASL97 [Mon, 7 Dec 2015 09:39:48 +0000 (17:39 +0800)]
Cache disable_anticheat and check it for "interacted_too_far"
ShadowNinja [Sat, 9 Jan 2016 20:11:43 +0000 (15:11 -0500)]
Actually add Doxygen main page
I apparently forgot to add this file in my previous commit (
bd40ee2b95138139a8cfbef878b3461176688c15).
Dalai Felinto [Mon, 14 Dec 2015 21:01:32 +0000 (19:01 -0200)]
New 3D Mode: Pageflip
The pageflip mode requires a stereo quadbuffer, and a modern graphic
card. Patch tested with NVidia 3D Vision.
The mini-map is not drawn, but that's what is done for topbottom and
sidebyside modes as well.
Also most of the time the user would prefer the HUD to be off. That's
for the user to decide though, and toggle it manually.
Finally, the interocular distance (aka eye separation) is twice as much
as the "3d_paralax_strength" settings. I find this a strange design
decision. I didn't want to chance this though, since it's how the other
3d modes interpret this settings.
Pavel Puchkin [Fri, 13 Mar 2015 11:09:58 +0000 (13:09 +0200)]
Simplify custom games packaging
sfan5 [Sat, 9 Jan 2016 15:13:37 +0000 (16:13 +0100)]
Fix screenshot links in AppData file
Pinky Snow [Sat, 9 Jan 2016 01:31:53 +0000 (20:31 -0500)]
fixed spelling
Fixed spelling mistake!
gregorycu [Mon, 4 Jan 2016 07:02:12 +0000 (18:02 +1100)]
Replace instance of readsome with read in decompressZlib Make decompressZlib more robust
Robert Zenz [Thu, 7 Jan 2016 22:16:56 +0000 (23:16 +0100)]
Clarified what get_node does.
slemonide [Sat, 2 Jan 2016 11:21:17 +0000 (03:21 -0800)]
Update lua_api.txt
set_sky does work with on_joinplayer
est31 [Fri, 8 Jan 2016 14:37:11 +0000 (15:37 +0100)]
Fix redis error reporting
Previously, we assumed that reply->str was NULL
terminated. However, this turned out to be not true,
as users reported crashes in strlen connected to
where reply->str was appended to an std::string.
Use the method recomended by the docs, to read the
length separately.
paramat [Wed, 30 Dec 2015 04:22:58 +0000 (04:22 +0000)]
Liquids: Flow into and destroy 'floodable' nodes
Add new node property 'floodable', default false
Define "air" as floodable = true in C++ and lua
ShadowNinja [Mon, 7 Dec 2015 02:34:30 +0000 (21:34 -0500)]
Improve Doxyfile
* Add main page.
* Organize into sections.
* Add threading sources.
* Include SpatialAreaStore, LevelDB/Redis, sound, FreeType, and cURL in output.
* Add logo.
* Fix project name hardcoding.
* Remove PAPER_TYPE (only used when GENERATE_LATEX is enabled).
* Have dot render graphs as SVG (smaller, and works even if dot's text drawing functionality is broken).
* Enable built-in STL support.
* Enable search bar.
* Switch from header-bar based navigation to treeview based navigation.
* Enable dynamic HTML (collapses graphs).
* Enable generation timestamp.
gregorycu [Mon, 4 Jan 2016 05:15:50 +0000 (16:15 +1100)]
Fix for commit
87dcee6 It uses the wrong variable and only covers some use cases. This change covers all use cases.
gregorycu [Sun, 3 Jan 2016 07:30:39 +0000 (18:30 +1100)]
Add MinSizeRel and RelWithDebInfo to MSVCBuildDir check
gregorycu [Sun, 3 Jan 2016 07:25:09 +0000 (18:25 +1100)]
Prevent technically unsafe access with empty vector
Robert Zenz [Sat, 2 Jan 2016 21:14:09 +0000 (22:14 +0100)]
Made it more clear that "[combine" does accept a list of files.
Perttu Ahola [Fri, 1 Jan 2016 16:14:30 +0000 (18:14 +0200)]
filesys: safeWriteToFile(): Remove the target file before rename only on Windows
Removing the target file on other platforms was enabled likely unintentionally
by commit
5f1f1151d3a9c113902630adc16cc3f4845da7ba.
This may be the reason why there has been corruption of files on Linux on hard
shutdowns.
Previously I described the problem and this fix in issue #3084.