X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=src%2Futil.c;h=1df757fa165f1ba42928f862e215524434d82072;hb=64f1e9b6bb2bb4d5b16240ae731bd8a84117cc98;hp=b2d26256a5c60d82f78747aa12db9ee3e456dfb0;hpb=dff049d44d86598d82bf78d3fdcfedc28db83018;p=wimlib diff --git a/src/util.c b/src/util.c index b2d26256..1df757fa 100644 --- a/src/util.c +++ b/src/util.c @@ -3,22 +3,21 @@ */ /* - * Copyright (C) 2010 Carl Thijssen * Copyright (C) 2012 Eric Biggers * * This file is part of wimlib, a library for working with WIM files. * * wimlib is free software; you can redistribute it and/or modify it under the - * terms of the GNU Lesser General Public License as published by the Free - * Software Foundation; either version 2.1 of the License, or (at your option) + * terms of the GNU General Public License as published by the Free + * Software Foundation; either version 3 of the License, or (at your option) * any later version. * * wimlib is distributed in the hope that it will be useful, but WITHOUT ANY * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + * A PARTICULAR PURPOSE. See the GNU General Public License for more * details. * - * You should have received a copy of the GNU Lesser General Public License + * You should have received a copy of the GNU General Public License * along with wimlib; if not, see http://www.gnu.org/licenses/. */ @@ -67,6 +66,7 @@ void wimlib_error_with_errno(const char *format, ...) va_start(va, format); errno_save = errno; + fflush(stdout); fputs("[ERROR] ", stderr); vfprintf(stderr, format, va); fprintf(stderr, ": %s\n", strerror(errno_save)); @@ -83,6 +83,7 @@ void wimlib_warning(const char *format, ...) va_start(va, format); errno_save = errno; + fflush(stdout); fputs("[WARNING] ", stderr); vfprintf(stderr, format, va); putc('\n', stderr); @@ -127,6 +128,8 @@ static const char *error_strings[] = { = "Tried to add an image with a name that is already in use", [WIMLIB_ERR_INTEGRITY] = "The WIM failed an integrity check", + [WIMLIB_ERR_INVALID_CAPTURE_CONFIG] + = "The capture configuration string was invalid", [WIMLIB_ERR_INVALID_CHUNK_SIZE] = "The WIM is compressed but does not have a chunk " "size of 32768", @@ -427,8 +430,13 @@ const char *path_basename(const char *path) p--; /* Trailing slashes. */ - while ((p != path - 1) && *p == '/') + while (1) { + if (p == path - 1) + return ""; + if (*p != '/') + break; p--; + } while ((p != path - 1) && *p != '/') p--;