X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=src%2Futil.c;h=1df757fa165f1ba42928f862e215524434d82072;hb=89198eafbaf6afac99dc74f77753466f9c1bc7f0;hp=1e134f7ad29f7ae75ec44799e9f6b1f22f9c0a91;hpb=f7d48eea9e1a6a9620ee7d8e883a6505939c7777;p=wimlib diff --git a/src/util.c b/src/util.c index 1e134f7a..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", @@ -165,8 +168,6 @@ static const char *error_strings[] = { "identify a WIM file", [WIMLIB_ERR_NO_FILENAME] = "The WIM is not identified with a filename", - [WIMLIB_ERR_NOT_ROOT] - = "Root privileges are required for this operation", [WIMLIB_ERR_NTFS_3G] = "NTFS-3g encountered an error (check errno)", [WIMLIB_ERR_OPEN] @@ -429,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--;