summaryrefslogtreecommitdiff
path: root/support/dktools/dk4strmr.c
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-09-20 03:03:26 +0000
committerNorbert Preining <norbert@preining.info>2020-09-20 03:03:26 +0000
commit1f457376b478257b88d4a857f5ec1b6155442dd7 (patch)
tree2a06a60551dea362cf8cb0cb0ba66c78608717c4 /support/dktools/dk4strmr.c
parentac690ca29ad5bf8a5203a65fd6252f7b564f4727 (diff)
CTAN sync 202009200303
Diffstat (limited to 'support/dktools/dk4strmr.c')
-rw-r--r--support/dktools/dk4strmr.c84
1 files changed, 36 insertions, 48 deletions
diff --git a/support/dktools/dk4strmr.c b/support/dktools/dk4strmr.c
index 482885711b..1786f4fa83 100644
--- a/support/dktools/dk4strmr.c
+++ b/support/dktools/dk4strmr.c
@@ -1,43 +1,21 @@
/*
- WARNING: This file was generated by dkct.
- Changes you make here will be lost if dkct is run again!
- You should modify the original source and run dkct on it.
- Original source: dk4strmr.ctr
+Copyright (C) 2015-2020, Dirk Krause
+SPDX-License-Identifier: BSD-3-Clause
*/
/*
-Copyright (C) 2015-2017, Dirk Krause
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above opyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-* Neither the name of the author nor the names of contributors may be used
- to endorse or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED.
-IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY
-DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ WARNING: This file was generated by the dkct program (see
+ http://dktools.sourceforge.net/ for details).
+ Changes you make here will be lost if dkct is run again!
+ You should modify the original source and run dkct on it.
+ Original source: dk4strmr.ctr
*/
/** @file dk4strmr.c The dk4strmr module.
*/
-#line 69 "dk4strmr.ctr"
+#line 97 "dk4strmr.ctr"
#include "dk4conf.h"
@@ -51,6 +29,13 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#endif
#endif
+#if DK4_HAVE_ASSERT_H
+#ifndef ASSERT_H_INCLUDED
+#include <assert.h>
+#define ASSERT_H_INCLUDED 1
+#endif
+#endif
+
#include "dk4strmr.h"
#ifndef DK4FD_H_INCLUDED
@@ -73,7 +58,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#line 103 "dk4strmr.ctr"
+#line 138 "dk4strmr.ctr"
@@ -92,7 +77,7 @@ dkT(".svgz"),
NULL
-#line 114 "dk4strmr.ctr"
+#line 149 "dk4strmr.ctr"
};
@@ -128,23 +113,26 @@ dk4stream_open_file_reader(const dkChar *filename, dk4_er_t *erp)
#endif
-#line 148 "dk4strmr.ctr"
+#line 183 "dk4strmr.ctr"
+#if DK4_USE_ASSERT
+ assert(NULL != filename);
+#endif
if (NULL != filename) {
p1 = dk4path_get_suffix(filename, erp);
if (NULL != p1) {
-#line 151 "dk4strmr.ctr"
+#line 189 "dk4strmr.ctr"
coi = dk4str_array_index(
dk4strmr_co_su, p1, DK4_HAVE_CASE_INSENSITIVE_PATHNAMES
);
if (0 > coi) coi = -1;
-#line 155 "dk4strmr.ctr"
+#line 193 "dk4strmr.ctr"
}
if (0 != dk4fopen_check(filename, 0, DK4_FOPEN_SC_IS_REGULAR, erp)) {
-#line 158 "dk4strmr.ctr"
+#line 196 "dk4strmr.ctr"
switch (coi) {
case 1: {
#if DK4_HAVE_BZLIB_H && (!(DK4_ON_WINDOWS && DK4_WIN_DENY_CRT))
@@ -152,7 +140,7 @@ dk4stream_open_file_reader(const dkChar *filename, dk4_er_t *erp)
/* +++++ bzip2, wchar_t */
-#line 164 "dk4strmr.ctr"
+#line 202 "dk4strmr.ctr"
fd = dk4fd_wc_open(filename, (DK4_O_RDONLY | DK4_O_BINARY), erp);
if (-1 < fd) {
bzf = BZ2_bzdopen(fd, dk4strmr_c8_mode);
@@ -175,7 +163,7 @@ dk4stream_open_file_reader(const dkChar *filename, dk4_er_t *erp)
/* +++++ bzip2, char */
-#line 185 "dk4strmr.ctr"
+#line 223 "dk4strmr.ctr"
bzf = BZ2_bzopen(filename, dk4strmr_c8_mode);
if (NULL != bzf) {
back = dk4stream_open_for_bzfile_with_close(
@@ -195,12 +183,12 @@ dk4stream_open_file_reader(const dkChar *filename, dk4_er_t *erp)
} break;
case 0: case 2: {
-#line 203 "dk4strmr.ctr"
+#line 241 "dk4strmr.ctr"
#if DK4_HAVE_ZLIB_H && (!(DK4_ON_WINDOWS && DK4_WIN_DENY_CRT))
#if DK4_CHAR_SIZE > 1
-#line 206 "dk4strmr.ctr"
+#line 244 "dk4strmr.ctr"
/* +++++ gzip, wchar_t */
fd = dk4fd_wc_open(filename, (DK4_O_RDONLY | DK4_O_BINARY), erp);
if (-1 < fd) {
@@ -221,7 +209,7 @@ dk4stream_open_file_reader(const dkChar *filename, dk4_er_t *erp)
#else
-#line 225 "dk4strmr.ctr"
+#line 263 "dk4strmr.ctr"
/* +++++ gzip, char */
gzf = gzopen(filename, dk4strmr_c8_mode);
if (NULL != gzf) {
@@ -242,7 +230,7 @@ dk4stream_open_file_reader(const dkChar *filename, dk4_er_t *erp)
} break;
default: {
-#line 244 "dk4strmr.ctr"
+#line 282 "dk4strmr.ctr"
#if DK4_ON_WINDOWS && DK4_WIN_DENY_CRT
dwattr = FILE_ATTRIBUTE_NORMAL;
dwattr |= FILE_FLAG_BACKUP_SEMANTICS;
@@ -274,34 +262,34 @@ dk4stream_open_file_reader(const dkChar *filename, dk4_er_t *erp)
);
if (NULL != fipo) {
-#line 274 "dk4strmr.ctr"
+#line 312 "dk4strmr.ctr"
back = dk4stream_open_for_file_with_close(
fipo, DK4_STREAM_READ, 4096, 1024, erp
);
if (NULL == back) {
-#line 278 "dk4strmr.ctr"
+#line 316 "dk4strmr.ctr"
(void)fclose(fipo);
}
} else {
-#line 281 "dk4strmr.ctr"
+#line 319 "dk4strmr.ctr"
}
#endif
-#line 284 "dk4strmr.ctr"
+#line 322 "dk4strmr.ctr"
} break;
}
} else {
-#line 287 "dk4strmr.ctr"
+#line 325 "dk4strmr.ctr"
}
} else {
dk4error_set_simple_error_code(erp, DK4_E_INVALID_ARGUMENTS);
}
-#line 291 "dk4strmr.ctr"
+#line 329 "dk4strmr.ctr"
return back;
}