Skip to content

Commit 5de8834

Browse files
authored
Add files via upload
1 parent d759780 commit 5de8834

File tree

3 files changed

+15
-10
lines changed

3 files changed

+15
-10
lines changed

catfile.ini

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
default = CatFile
55
proname = PyCatFile
66
includedef = true
7-
inmemfile = true
7+
useinmem = true
8+
usmemfd = true
89
usespoolfile = false
910
spoolfilesize = 4194304
1011
filebuffsize = 262144

catfile.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
"default": "CatFile",
44
"proname": "PyCatFile",
55
"includedef": true,
6-
"inmemfile": true,
6+
"useinmem": true,
7+
"usememfd": true,
78
"usespoolfile": false,
89
"spoolfilesize": 4194304,
910
"filebuffsize": 262144

pycatfile.py

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -416,7 +416,8 @@ def _is_printable(ch):
416416
__file_format_multi_dict__ = {}
417417
__file_format_default__ = "CatFile"
418418
__include_defaults__ = True
419-
__use_inmemfile__ = True
419+
__use_inmem__ = True
420+
__use_memfd__ = True
420421
__use_spoolfile__ = False
421422
__use_spooldir__ = tempfile.gettempdir()
422423
BYTES_PER_KiB = 1024
@@ -462,7 +463,8 @@ def decode_unicode_escape(value):
462463
__file_format_default__ = decode_unicode_escape(config.get('config', 'default'))
463464
__program_name__ = decode_unicode_escape(config.get('config', 'proname'))
464465
__include_defaults__ = config.getboolean('config', 'includedef')
465-
__use_inmemfile__ = config.getboolean('config', 'inmemfile')
466+
__use_inmem__ = config.getboolean('config', 'useinmem')
467+
__use_memfd__ = config.getboolean('config', 'usememfd')
466468
__use_spoolfile__ = config.getboolean('config', 'usespoolfile')
467469
__spoolfile_size__ = config.getint('config', 'spoolfilesize')
468470
# Loop through all sections
@@ -556,8 +558,9 @@ def _get(section_dict, key, default=None):
556558
cfg_config = cfg.get('config', {}) or {}
557559
__file_format_default__ = decode_unicode_escape(_get(cfg_config, 'default', ''))
558560
__program_name__ = decode_unicode_escape(_get(cfg_config, 'proname', ''))
559-
__include_defaults__ = _to_bool(_get(cfg_config, 'includedef', False))
560-
__use_inmemfile__ = _to_bool(_get(cfg_config, 'inmemfile', False))
561+
__include_defaults__ = _to_bool(_get(cfg_config, 'includedef', True))
562+
__use_inmem__ = _to_bool(_get(cfg_config, 'useinmem', True))
563+
__use_memfd__ = _to_bool(_get(cfg_config, 'usememfd', True))
561564
__use_spoolfile__ = _to_bool(_get(cfg_config, 'usespoolfile', False))
562565
__spoolfile_size__ = _to_int(_get(cfg_config, 'spoolfilesize', DEFAULT_SPOOL_MAX))
563566

@@ -2058,9 +2061,9 @@ def _normalize_initial_data(data, isbytes, encoding, errors=None):
20582061

20592062

20602063
def MkTempFile(data=None,
2061-
inmem=__use_inmemfile__,
2064+
inmem=__use_inmem__, usememfd=__use_memfd__,
20622065
isbytes=True,
2063-
prefix="",
2066+
prefix=__program_name__,
20642067
delete=True,
20652068
encoding="utf-8",
20662069
newline=None, # text mode only; in-memory objects ignore newline semantics
@@ -2122,13 +2125,13 @@ def MkTempFile(data=None,
21222125
# -------- In-memory --------
21232126
if inmem:
21242127
# Use memfd only for bytes, and only where available (Linux, Python 3.8+)
2125-
if isbytes and hasattr(os, "memfd_create"):
2128+
if usememfd and isbytes and hasattr(os, "memfd_create"):
21262129
flags = 0
21272130
# Close-on-exec is almost always what you want for temps
21282131
if hasattr(os, "MFD_CLOEXEC"):
21292132
flags |= os.MFD_CLOEXEC
21302133

2131-
fd = os.memfd_create("MkTempFile", flags)
2134+
fd = os.memfd_create(prefix, flags)
21322135
# Binary read/write file-like object backed by RAM
21332136
f = os.fdopen(fd, "w+b")
21342137

0 commit comments

Comments
 (0)