W. Felix Handte
51ac0207af
Remove UTIL_statFile() and UTIL_statDir(); Decompose Former Call-Sites
2020-08-10 15:28:02 -04:00
W. Felix Handte
93dda988c8
Remove Unused Function UTIL_fileExist()
2020-08-10 15:22:53 -04:00
W. Felix Handte
c1449143c5
Share stat() Calls in Uses of UTIL_chmod()
2020-08-05 12:10:42 -04:00
W. Felix Handte
0a8aacb4db
Use stat() to Check that File Should be chmod()-ed
...
Rather than special-casing a check for `/dev/null`, this uses `stat()` to
avoid `chmod()`-ing any non-regular file. I believe this is the desirable
behavior. `UTIL_chmod()` is never called on directories at the moment, only
output files.
2020-08-05 12:00:12 -04:00
W. Felix Handte
7238cca1a1
Deduplicate Some Low-Hanging Fruit of Redundant Stat Calls
2020-08-05 01:08:34 -04:00
W. Felix Handte
44fa052599
Introduce Variants of Various UTIL Functions that Take Pre-Populated stat_t Structs
...
Instead of calling `stat()`, these functions accept the result of a previous
`stat()` call on the file in question, which will allow us to make multiple
decisions around a file without redundant `stat()` calls.
2020-08-05 01:00:06 -04:00
W. Felix Handte
b6e24bc4dc
Rename UTIL_getFileStat() -> UTIL_statFile() and UTIL_getDirectoryStat() -> UTIL_statDir()
...
I want to introduce versions of many of these functions that take pre-
populated `stat_t` objects and use those rather than doing their own redundant
`stat()` internally. These functions will have `...Stat()` suffixes. So this
commit renames these existing functions into the active voice, to avoid
confusion.
2020-08-05 00:40:16 -04:00
W. Felix Handte
1a1003f996
Mark stat_t Arg to UTIL_setFileStat() const
2020-08-05 00:35:21 -04:00
W. Felix Handte
5fbc6addb6
Additionally Convert UTIL_getFileStat() Calls to UTIL_stat() Where Appropriate
2020-08-05 00:31:48 -04:00
W. Felix Handte
69cb9e7798
Use New Stat Helper
2020-08-05 00:24:32 -04:00
W. Felix Handte
b11bea56a5
Introduce Dedicated Helper to Call stat()
2020-08-05 00:21:21 -04:00
Fabrice Fontaine
26d01bdb26
programs/util.c: fix build without st_mtime
...
Since version 1.4.5 and commit
5af8cb7aea8d890b4801e50e5274371510f2cf33, if st_mtime is not defined,
programs/util.c uses utime without including utime.h which will raise
the following build failure on some of the buildroot autobuilders:
util.c: In function 'UTIL_setFileStat':
util.c:161:24: error: storage size of 'timebuf' isn't known
struct utimbuf timebuf;
^~~~~~~
Fixes:
- http://autobuild.buildroot.org/results/be902c5d110f37bce622a2215191f155b7d3e7e0
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2020-07-15 21:24:13 +02:00
Xin Xie
9a8ccd4ba3
Add output-dir-mirror option
2020-06-24 22:12:11 -07:00
Nick Terrell
ac58c8d720
Fix copyright and license lines
...
* All copyright lines now have -2020 instead of -present
* All copyright lines include "Facebook, Inc"
* All licenses are now standardized
The copyright in `threading.{h,c}` is not changed because it comes from
zstdmt.
The copyright and license of `divsufsort.{h,c}` is not changed.
2020-03-26 17:02:06 -07:00
Nick Terrell
f6d00c059f
[util] Fix readLineFromFile on Cygwin
2020-01-13 14:37:22 -08:00
Christoph Reiter
d0dcaf56c2
Make UTIL_countPhysicalCores() work under Cygwin ( #1941 )
...
Cygwin currently uses the fallback implementation which just returns 1 every time,
which leads to bad performance when zstd is called with -T0 for example.
Instead use the POSIX implementation used for the BSDs which works just fine under Cygwin.
Tested under Cygwin and MSYS2.
2020-01-07 15:48:26 -08:00
W. Felix Handte
5666835ea7
Add Comment
2019-12-23 13:24:28 -05:00
W. Felix Handte
5af8cb7aea
Use statbuf->st_mtim Again
2019-12-23 13:24:28 -05:00
Yann Collet
a49417b5af
fix recent issue combining -r with empty list of input files
...
This would resize the table of input filenames to zero,
delivering an empty table,
to which it was no longer possible to add stdin.
2019-12-02 14:28:18 -08:00
Yann Collet
d5b4a7ea58
removed scanbuild workaround
2019-11-26 17:46:57 -08:00
Yann Collet
96ee20758c
assembleFNT() can no longer fail
2019-11-26 15:44:33 -08:00
Yann Collet
aaab618ae9
pushed aside stdio.h too
...
since only UTIL_DISPLAY() depended on it.
2019-11-26 15:25:32 -08:00
Yann Collet
7543cd055c
moved UTIL_DISPLAY() inside util.c
2019-11-26 15:21:58 -08:00
Yann Collet
a684b82774
util: isolated some dependencies
...
from *.h to *.c
so that they don't get transitively included
into users of util.h.
2019-11-26 15:16:53 -08:00
Yann Collet
f622c0adf3
switched UTIL_refFilename() to an assert()
2019-11-26 14:48:23 -08:00
Yann Collet
c71bd45a3b
Merge branch 'dev' into ahmed_file
2019-11-26 11:20:26 -08:00
Yann Collet
5e657aca90
silence scan-build false positive
...
blind attempt
2019-11-25 15:50:58 -08:00
Yann Collet
9a3de0a535
changed name from createX to assembleX
...
shows that the resulting object just takes ownership of provided buffer.
2019-11-25 15:34:55 -08:00
Yann Collet
9a22140ef4
created UTIL_chmod()
...
protecting "/dev/null" from having its permissions changed.
also : minor : improved consistency of util.h API
2019-11-25 13:45:22 -08:00
Sergey Dryabzhinsky
612a06eb3e
Update util.c
2019-11-19 23:24:00 +03:00
Sergey Dryabzhinsky
f62cf1fff5
Fix typo in util.c
...
There must be mtim*e*
2019-11-19 23:15:28 +03:00
Yann Collet
9df49dc50a
Visual compiler bug work-around
2019-11-06 15:23:44 -08:00
Yann Collet
a7e33e3e10
updated fuzz tests to use FileNamesTable* abstraction
2019-11-06 14:42:13 -08:00
Yann Collet
31a0abbfda
updated pzstd and largeNbDicts to use the new FileNamesTable* abstraction
2019-11-06 09:10:05 -08:00
Yann Collet
b09f59390b
refactor code to only use FileNamesTable*
2019-11-05 17:02:43 -08:00
Yann Collet
76b9e42b0b
refactoring (simplification) of util.h public API
2019-11-05 14:59:45 -08:00
Yann Collet
81c51483e9
Merge branch 'dev' into ahmed_file
2019-11-05 14:44:12 -08:00
Yann Collet
47034cd6c3
Merge pull request #1850 from bimbashrestha/named_pipes
...
Gating named pipe support on windows
2019-10-30 12:18:58 -07:00
Shashank Tavildar
3c1649f139
Removed the optimization check
2019-10-29 15:59:20 -07:00
Shashank Tavildar
6d0b7bd6ce
Changed extension comparision logic, added new test cases
2019-10-29 13:36:09 -07:00
Shashank Tavildar
c5060997e9
Added check to perform comparison only if extension is present
2019-10-29 12:56:04 -07:00
Shashank Tavildar
9ab6a747d4
Created utility function to extract extension from filename, fixed tests
2019-10-29 12:27:54 -07:00
Shashank Tavildar
0f2bff2faf
Addressing comments, removing cyclic dependency with header file, updating tests
2019-10-28 18:21:47 -07:00
Shashank Tavildar
f422914619
Resolving local merge conflicts
2019-10-28 15:15:13 -07:00
Yann Collet
d9c634e13b
return final \0
directly from readLine()
2019-10-28 15:03:32 -07:00
Shashank Tavildar
02433e0b15
Addressing comments: -Created a list of extensions defined in fileio.h, -Updated test
2019-10-28 14:54:54 -07:00
Shashank Tavildar
48f856640e
Added --exclude-compressed flag feature that skips compression of precompressed files
2019-10-28 13:57:40 -07:00
Yann Collet
12efa1ed89
yet another minor visual conversion warning
...
this time for 32-bit systems
2019-10-26 00:27:32 -07:00
Yann Collet
3e5c81ea36
fixed another minor conversion warning on Visual
...
and made CONTROL() use exit() instead of abort().
2019-10-26 00:01:11 -07:00
Yann Collet
74d872e987
fix minor conversion warning on 32-bit
2019-10-25 18:26:30 -07:00