DELETED .github/workflows/macos-12.yml Index: .github/workflows/macos-12.yml ================================================================== --- .github/workflows/macos-12.yml +++ /dev/null @@ -1,31 +0,0 @@ -name: macos-12 -on: [push, pull_request] -jobs: - tests: - runs-on: macos-12 - strategy: - matrix: - configure_flags: - - - - --disable-threads - - --disable-threads --disable-sockets - - --disable-threads --disable-files - - --disable-threads --disable-sockets --disable-files - - --disable-sockets - - --disable-sockets --disable-files - - --disable-files - - --disable-shared - steps: - - name: Install dependencies - run: brew install autoconf automake - - uses: actions/checkout@v4 - - name: autogen.sh - run: ./autogen.sh - - name: configure - run: ./configure ${{ matrix.configure_flags }} - - name: make - run: make -j$(sysctl -n hw.logicalcpu) - - name: make check - run: make check - - name: make install - run: sudo make install Index: .github/workflows/msys2.yml ================================================================== --- .github/workflows/msys2.yml +++ .github/workflows/msys2.yml @@ -4,16 +4,12 @@ tests: runs-on: windows-latest strategy: matrix: sys: - # Broken: Exceptions with ARC fail. Works with other mingw-w64 - # distributions. - #- mingw32 - mingw64 - ucrt64 - - clang32 - clang64 steps: - uses: actions/checkout@v4 - uses: msys2/setup-msys2@v2 with: @@ -34,5 +30,10 @@ shell: msys2 {0} run: make check - name: make install shell: msys2 {0} run: make install + - name: C++ test + shell: msys2 {0} + run: | + objfw-compile -o cxxtest .github/workflows/CXXTest.mm + ./cxxtest.exe Index: .github/workflows/nintendo-ds.yml ================================================================== --- .github/workflows/nintendo-ds.yml +++ .github/workflows/nintendo-ds.yml @@ -11,25 +11,33 @@ run: ./autogen.sh - name: configure run: | docker run \ -e DEVKITPRO=/opt/devkitpro \ - -e PATH="/opt/devkitpro/devkitARM/bin:$PATH" \ + -e PATH="/opt/devkitpro/devkitARM/bin:/opt/devkitpro/tools/bin:$PATH" \ -v "$PWD:/objfw" \ devkitpro/devkitarm \ sh -c 'cd /objfw && ./configure --host=arm-none-eabi --with-nds' - name: make run: | docker run \ -e DEVKITPRO=/opt/devkitpro \ - -e PATH="/opt/devkitpro/devkitARM/bin:$PATH" \ + -e PATH="/opt/devkitpro/devkitARM/bin:/opt/devkitpro/tools/bin:$PATH" \ -v "$PWD:/objfw" \ devkitpro/devkitarm \ sh -c "cd /objfw && make -j$(nproc)" + - name: make tests.nds + run: | + docker run \ + -e DEVKITPRO=/opt/devkitpro \ + -e PATH="/opt/devkitpro/devkitARM/bin:/opt/devkitpro/tools/bin:$PATH" \ + -v "$PWD:/objfw" \ + devkitpro/devkitarm \ + sh -c "cd /objfw/tests && make tests.nds" - name: make install run: | docker run \ -e DEVKITPRO=/opt/devkitpro \ - -e PATH="/opt/devkitpro/devkitARM/bin:$PATH" \ + -e PATH="/opt/devkitpro/devkitARM/bin:/opt/devkitpro/tools/bin:$PATH" \ -v "$PWD:/objfw" \ devkitpro/devkitarm \ sh -c "cd /objfw && make install" Index: ChangeLog ================================================================== --- ChangeLog +++ ChangeLog @@ -2,10 +2,37 @@ * Changes of existing features or bugfixes + New features This file only contains the most significant changes. +ObjFW 1.2.3 -> ObjFW 1.2.4, 2025-02-20 + * Fixes OFPlainConditionTimedWait(), which as a result fixes OFRunLoop + spinning in some situations. + * Fixes OFMutableUTF8Strings containing `\0`. + * Fixes OFHTTPServer using an IPv6 address as host. + +ObjFW 1.2.2 -> ObjFW 1.2.3, 2024-12-15 + * Fixes OFRunLoop not draining the autorelease pool after firing a timer. + * Adds -fno-constant-ns{number,array,dictionary}-literals to OBJCFLAGS, which + is required to have literals work with ObjFW with recent Xcode versions. + +ObjFW 1.2.1 -> ObjFW 1.2.2, 2024-12-07 + * Fixes OFTLSSocket not sending shutdown when using OpenSSL. + * Fixes OFTLSSocket initialization when using MbedTLS. + * Fixes imports in ObjFWTLS.h. + * OFINIFile now properly quotes ; and #. + * Ensures ofarc and ofhash link ObjFWTLS. + * Makes OFEmbeddedIRIHandler public, as it's required for objfw-embed. + * Fixes compiling on Haiku r1beta5. + * Adds compatibility with latest devkitARM. + +ObjFW 1.2 -> ObjFW 1.2.1, 2024-11-09 + * Fixes exceptions in ObjC++. + * Fixes compiling ObjC++ on Windows. + * Fixes compiling tests on Haiku. + * Properly hides private methods in ObjFWHID. + ObjFW 1.1.7 -> ObjFW 1.2, 2024-11-02 + Adds a new framework for game controllers called ObjFWHID. + Adds support for tagged pointer strings. + Strings are now allowed to contain `\0`, while preventing such strings from being passed to anything that expects a C string. Index: configure.ac ================================================================== --- configure.ac +++ configure.ac @@ -1,14 +1,13 @@ -AC_INIT(ObjFW, 1.3-dev, js@nil.im, objfw, https://objfw.nil.im/) +AC_INIT(ObjFW, 1.2.4, js@nil.im, objfw, https://objfw.nil.im/) AC_CONFIG_SRCDIR(src) AC_CONFIG_AUX_DIR(build-aux) AC_CONFIG_MACRO_DIR(build-aux/m4) AC_DEFINE(OBJFW_VERSION_MAJOR, 1, [The major version of ObjFW]) -AC_DEFINE(OBJFW_VERSION_MINOR, 3, [The minor version of ObjFW]) -dnl This may only be set to 1.3 once 1.3 is released -AC_SUBST(BUNDLE_VERSION, 1.2.0) +AC_DEFINE(OBJFW_VERSION_MINOR, 2, [The minor version of ObjFW]) +AC_SUBST(BUNDLE_VERSION, 1.2.4) AC_SUBST(BUNDLE_SHORT_VERSION, 1.2) for i in configure.ac build-aux/m4/*; do AS_IF([test $i -nt configure], [ AC_MSG_ERROR([$i is newer than configure! Run ./autogen.sh!]) @@ -236,18 +235,23 @@ ]) flags="-march=armv5te -mtune=arm946e-s -mthumb -mthumb-interwork" OBJCFLAGS="$OBJCFLAGS $flags" OBJFW_OBJCFLAGS="$OBJFW_OBJCFLAGS $flags" - CPPFLAGS="$CPPFLAGS -DARM9 -I$DEVKITPRO/libnds/include" - OBJFW_CPPFLAGS="$OBJFW_CPPFLAGS -DARM9 -I\$DEVKITPRO/libnds/include" + CPPFLAGS="$CPPFLAGS -DARM9 -D__NDS__ -I$DEVKITPRO/libnds/include" + CPPFLAGS="$CPPFLAGS -I$DEVKITPRO/calico/include" + OBJFW_CPPFLAGS="$OBJFW_CPPFLAGS -DARM9 -D__NDS__" + OBJFW_CPPFLAGS="$OBJFW_CPPFLAGS -I\$DEVKITPRO/libnds/include" + OBJFW_CPPFLAGS="$OBJFW_CPPFLAGS -I\$DEVKITPRO/calico/include" ASFLAGS="$ASFLAGS -march=armv5te" - LDFLAGS="$LDFLAGS -specs=ds_arm9.specs" - OBJFW_LDFLAGS="$OBJFW_LDFLAGS -specs=ds_arm9.specs" - tmp="-L$DEVKITPRO/libnds/lib -lfilesystem -lfat -lnds9" - LIBS="$LIBS $tmp" - OBJFW_LIBS="$OBJFW_LIBS $tmp" + LDFLAGS="$LDFLAGS -specs=$DEVKITPRO/calico/share/ds9.specs" + OBJFW_LDFLAGS="$OBJFW_LDFLAGS -specs=\$DEVKITPRO/calico/share/ds9.specs" + LIBS="$LIBS -L$DEVKITPRO/libnds/lib -L$DEVKITPRO/calico/lib" + LIBS="$LIBS -lfilesystem -lfat -lnds9 -lcalico_ds9" + OBJFW_LIBS="$OBJFW_LIBS -L\$DEVKITPRO/libnds/lib" + OBJFW_LIBS="$OBJFW_LIBS -L\$DEVKITPRO/calico/lib" + OBJFW_LIBS="$OBJFW_LIBS -lfilesystem -lfat -lnds9 -lcalico_ds9" enable_shared="no" enable_threads="no" # TODO enable_sockets="no" # TODO check_pedantic="no" @@ -369,10 +373,25 @@ AX_CHECK_COMPILER_FLAGS(-fno-common, [OBJCFLAGS="$OBJCFLAGS -fno-common"]) AX_CHECK_COMPILER_FLAGS(-Xclang -fno-constant-cfstrings, [ flag="-Xclang -fno-constant-cfstrings" OBJCFLAGS="$OBJCFLAGS $flag" OBJFW_OBJCFLAGS="$OBJFW_OBJCFLAGS $flag" +]) +AX_CHECK_COMPILER_FLAGS(-Xclang -fno-constant-nsnumber-literals, [ + flag="-Xclang -fno-constant-nsnumber-literals" + OBJCFLAGS="$OBJCFLAGS $flag" + OBJFW_OBJCFLAGS="$OBJFW_OBJCFLAGS $flag" +]) +AX_CHECK_COMPILER_FLAGS(-Xclang -fno-constant-nsarray-literals, [ + flag="-Xclang -fno-constant-nsarray-literals" + OBJCFLAGS="$OBJCFLAGS $flag" + OBJFW_OBJCFLAGS="$OBJFW_OBJCFLAGS $flag" +]) +AX_CHECK_COMPILER_FLAGS(-Xclang -fno-constant-nsdictionary-literals, [ + flag="-Xclang -fno-constant-nsdictionary-literals" + OBJCFLAGS="$OBJCFLAGS $flag" + OBJFW_OBJCFLAGS="$OBJFW_OBJCFLAGS $flag" ]) AX_CHECK_COMPILER_FLAGS([-Wsign-compare -Werror], [OBJCFLAGS="$OBJCFLAGS -Wsign-compare"]) AS_IF([test x"$with_nds" != x"yes"], [ @@ -625,10 +644,11 @@ AC_SUBST(OBJFWRT_FRAMEWORK, "ObjFWRT.framework") AC_SUBST(RUNTIME_FRAMEWORK_LIBS, "-framework ObjFWRT") ]) AC_SUBST(RUNTIME_LIBS, "-lobjfwrt") + AC_SUBST(RUNTIME_STATIC_LIBS, '${libdir}/libobjfwrt.a') AS_IF([test x"$enable_shared" = x"no"], [ AC_SUBST(LIBOBJFWRT_DEP, "../src/runtime/libobjfwrt.a") AC_SUBST(LIBOBJFWRT_DEP_LVL2, "../../src/runtime/libobjfwrt.a") ]) @@ -678,10 +698,11 @@ AC_DEFINE(OF_APPLE_RUNTIME, 1, [Whether we use the Apple ObjC runtime]) AC_CHECK_LIB(objc, objc_msgSend, [ AC_SUBST(RUNTIME_LIBS, "-lobjc") AC_SUBST(RUNTIME_FRAMEWORK_LIBS, "-lobjc") + AC_SUBST(RUNTIME_STATIC_LIBS, "-lobjc") ], [ AC_MSG_ERROR([libobjc not found!]) ]) old_OBJCFLAGS="$OBJCFLAGS" @@ -2119,11 +2140,11 @@ AS_IF([test x"$GOBJC" = x"yes"], [ OBJCFLAGS="$OBJCFLAGS -Wwrite-strings -Wpointer-arith" AC_ARG_ENABLE(werror, AS_HELP_STRING([--disable-werror], [do not build with -Werror])) - AS_IF([test x"$enable_werror" != x"no"], [ + AS_IF([test x"$enable_werror" = x"yes"], [ OBJCFLAGS="$OBJCFLAGS -Werror" ]) old_OBJCFLAGS="$OBJCFLAGS" OBJCFLAGS="$OBJCFLAGS -Werror" Index: extra.mk.in ================================================================== --- extra.mk.in +++ extra.mk.in @@ -1,19 +1,19 @@ OBJFW_SHARED_LIB = @OBJFW_SHARED_LIB@ OBJFW_STATIC_LIB = @OBJFW_STATIC_LIB@ OBJFW_FRAMEWORK = @OBJFW_FRAMEWORK@ OBJFW_LIB_MAJOR = 1 OBJFW_LIB_MINOR = 2 -OBJFW_LIB_PATCH = 0 +OBJFW_LIB_PATCH = 4 OBJFW_LIB_MAJOR_MINOR = ${OBJFW_LIB_MAJOR}.${OBJFW_LIB_MINOR} OBJFWRT_SHARED_LIB = @OBJFWRT_SHARED_LIB@ OBJFWRT_STATIC_LIB = @OBJFWRT_STATIC_LIB@ OBJFWRT_FRAMEWORK = @OBJFWRT_FRAMEWORK@ OBJFWRT_LIB_MAJOR = 1 OBJFWRT_LIB_MINOR = 2 -OBJFWRT_LIB_PATCH = 0 +OBJFWRT_LIB_PATCH = 1 OBJFWRT_LIB_MAJOR_MINOR = ${OBJFWRT_LIB_MAJOR}.${OBJFWRT_LIB_MINOR} OBJFWBRIDGE_SHARED_LIB = @OBJFWBRIDGE_SHARED_LIB@ OBJFWBRIDGE_STATIC_LIB = @OBJFWBRIDGE_STATIC_LIB@ OBJFWBRIDGE_FRAMEWORK = @OBJFWBRIDGE_FRAMEWORK@ @@ -24,18 +24,18 @@ OBJFWTLS_SHARED_LIB = @OBJFWTLS_SHARED_LIB@ OBJFWTLS_STATIC_LIB = @OBJFWTLS_STATIC_LIB@ OBJFWTLS_FRAMEWORK = @OBJFWTLS_FRAMEWORK@ OBJFWTLS_LIB_MAJOR = 1 OBJFWTLS_LIB_MINOR = 0 -OBJFWTLS_LIB_PATCH = 2 +OBJFWTLS_LIB_PATCH = 3 OBJFWHID_SHARED_LIB = @OBJFWHID_SHARED_LIB@ OBJFWHID_STATIC_LIB = @OBJFWHID_STATIC_LIB@ OBJFWHID_FRAMEWORK = @OBJFWHID_FRAMEWORK@ OBJFWHID_LIB_MAJOR = 1 OBJFWHID_LIB_MINOR = 0 -OBJFWHID_LIB_PATCH = 0 +OBJFWHID_LIB_PATCH = 1 OBJFWHID_LIB_MAJOR_MINOR = ${OBJFWHID_LIB_MAJOR}.${OBJFWHID_LIB_MINOR} BIN_PREFIX = @BIN_PREFIX@ BRIDGE = @BRIDGE@ CVINCLUDE_INLINE_H = @CVINCLUDE_INLINE_H@ @@ -84,10 +84,11 @@ RUNTIME_ASSOCIATION_M = @RUNTIME_ASSOCIATION_M@ RUNTIME_AUTORELEASE_M = @RUNTIME_AUTORELEASE_M@ RUNTIME_FRAMEWORK_LIBS = @RUNTIME_FRAMEWORK_LIBS@ RUNTIME_INSTANCE_M = @RUNTIME_INSTANCE_M@ RUNTIME_LIBS = @RUNTIME_LIBS@ +RUNTIME_STATIC_LIBS = @RUNTIME_STATIC_LIBS@ SUBPROCESS = @SUBPROCESS@ TESTPLUGIN = @TESTPLUGIN@ TESTPLUGIN_BUNDLE = @TESTPLUGIN_BUNDLE@ TESTPLUGIN_LIBS = @TESTPLUGIN_LIBS@ TESTS_LIBS = @TESTS_LIBS@ Index: generators/unicode/TableGenerator.h ================================================================== --- generators/unicode/TableGenerator.h +++ generators/unicode/TableGenerator.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: generators/unicode/TableGenerator.m ================================================================== --- generators/unicode/TableGenerator.m +++ generators/unicode/TableGenerator.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: generators/unicode/copyright.h ================================================================== --- generators/unicode/copyright.h +++ generators/unicode/copyright.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -19,11 +19,11 @@ #import "OFString.h" #define COPYRIGHT \ @"/*\n" \ - @" * Copyright (c) 2008-2024 Jonathan Schleifer \n" \ + @" * Copyright (c) 2008-2025 Jonathan Schleifer \n" \ @" *\n" \ @" * All rights reserved.\n" \ @" *\n" \ @" * This program is free software: you can redistribute it " \ @"and/or modify it\n" \ Index: src/Makefile ================================================================== --- src/Makefile +++ src/Makefile @@ -21,10 +21,11 @@ OFData.m \ OFData+CryptographicHashing.m \ OFData+MessagePackParsing.m \ OFDate.m \ OFDictionary.m \ + OFEmbeddedIRIHandler.m \ OFEnumerator.m \ OFFileManager.m \ OFGZIPStream.m \ OFHMAC.m \ OFINICategory.m \ @@ -214,11 +215,10 @@ OFConcreteMutableSet.m \ OFConcreteNumber.m \ OFConcreteSet.m \ OFConcreteSubarray.m \ OFConcreteValue.m \ - OFEmbeddedIRIHandler.m \ OFHuffmanTree.m \ OFINIFileSettings.m \ OFInvertedCharacterSet.m \ OFLHADecompressingStream.m \ OFMutableUTF8String.m \ Index: src/OFAAAADNSResourceRecord.h ================================================================== --- src/OFAAAADNSResourceRecord.h +++ src/OFAAAADNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFAAAADNSResourceRecord.m ================================================================== --- src/OFAAAADNSResourceRecord.m +++ src/OFAAAADNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFADNSResourceRecord.h ================================================================== --- src/OFADNSResourceRecord.h +++ src/OFADNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFADNSResourceRecord.m ================================================================== --- src/OFADNSResourceRecord.m +++ src/OFADNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFASPrintF.h ================================================================== --- src/OFASPrintF.h +++ src/OFASPrintF.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFASPrintF.m ================================================================== --- src/OFASPrintF.m +++ src/OFASPrintF.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFApplication.h ================================================================== --- src/OFApplication.h +++ src/OFApplication.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -35,10 +35,13 @@ @class OFMutableArray OF_GENERIC(ObjectType); @class OFMutableDictionary OF_GENERIC(KeyType, ObjectType); @class OFSandbox; @class OFString; +#ifdef __cplusplus +extern "C" { +#endif /** * @brief A notification that will be sent when the application did finish * launching. */ extern const OFNotificationName OFApplicationDidFinishLaunchingNotification; @@ -45,10 +48,13 @@ /** * @brief A notification that will be sent when the application will terminate. */ extern const OFNotificationName OFApplicationWillTerminateNotification; +#ifdef __cplusplus +} +#endif /** * @brief Specify the class to be used as the application delegate. * * An instance of this class will be created and act as the application Index: src/OFApplication.m ================================================================== --- src/OFApplication.m +++ src/OFApplication.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -499,11 +499,12 @@ encoding = [OFLocale encoding]; #ifndef OF_NINTENDO_DS if (*argc > 0) { #else - if (__system_argv->argvMagic == ARGV_MAGIC && __system_argv->argc > 0) { + if (g_envNdsArgvHeader->magic == ENV_NDS_ARGV_MAGIC && + g_envNdsArgvHeader->argc > 0) { #endif _programName = [[OFString alloc] initWithCString: (*argv)[0] encoding: encoding]; arguments = [[OFMutableArray alloc] init]; _arguments = arguments; Index: src/OFArchiveEntry.h ================================================================== --- src/OFArchiveEntry.h +++ src/OFArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFArchiveIRIHandler.h ================================================================== --- src/OFArchiveIRIHandler.h +++ src/OFArchiveIRIHandler.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFArchiveIRIHandler.m ================================================================== --- src/OFArchiveIRIHandler.m +++ src/OFArchiveIRIHandler.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFArray+Private.h ================================================================== --- src/OFArray+Private.h +++ src/OFArray+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFArray.h ================================================================== --- src/OFArray.h +++ src/OFArray.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFArray.m ================================================================== --- src/OFArray.m +++ src/OFArray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFAsyncIPSocketConnector.h ================================================================== --- src/OFAsyncIPSocketConnector.h +++ src/OFAsyncIPSocketConnector.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFAsyncIPSocketConnector.m ================================================================== --- src/OFAsyncIPSocketConnector.m +++ src/OFAsyncIPSocketConnector.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFAtomic.h ================================================================== --- src/OFAtomic.h +++ src/OFAtomic.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFBase64.h ================================================================== --- src/OFBase64.h +++ src/OFBase64.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFBase64.m ================================================================== --- src/OFBase64.m +++ src/OFBase64.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFBitSetCharacterSet.h ================================================================== --- src/OFBitSetCharacterSet.h +++ src/OFBitSetCharacterSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFBitSetCharacterSet.m ================================================================== --- src/OFBitSetCharacterSet.m +++ src/OFBitSetCharacterSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFBlock.h ================================================================== --- src/OFBlock.h +++ src/OFBlock.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFBlock.m ================================================================== --- src/OFBlock.m +++ src/OFBlock.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCNAMEDNSResourceRecord.h ================================================================== --- src/OFCNAMEDNSResourceRecord.h +++ src/OFCNAMEDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCNAMEDNSResourceRecord.m ================================================================== --- src/OFCNAMEDNSResourceRecord.m +++ src/OFCNAMEDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCRC16.h ================================================================== --- src/OFCRC16.h +++ src/OFCRC16.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCRC16.m ================================================================== --- src/OFCRC16.m +++ src/OFCRC16.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCRC32.h ================================================================== --- src/OFCRC32.h +++ src/OFCRC32.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCRC32.m ================================================================== --- src/OFCRC32.m +++ src/OFCRC32.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCharacterSet.h ================================================================== --- src/OFCharacterSet.h +++ src/OFCharacterSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCharacterSet.m ================================================================== --- src/OFCharacterSet.m +++ src/OFCharacterSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCollection.h ================================================================== --- src/OFCollection.h +++ src/OFCollection.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFColor.h ================================================================== --- src/OFColor.h +++ src/OFColor.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -30,11 +30,11 @@ #ifdef OF_HAVE_CLASS_PROPERTIES @property (class, readonly, nonatomic) OFColor *black; @property (class, readonly, nonatomic) OFColor *silver; @property (class, readonly, nonatomic) OFColor *gray; @property (class, readonly, nonatomic) OFColor *grey - OF_DEPRECATED(ObjFW, 1, 1, "Use gray instead"); + OF_DEPRECATED(ObjFW, 1, 1, "Use +[gray] instead"); @property (class, readonly, nonatomic) OFColor *white; @property (class, readonly, nonatomic) OFColor *maroon; @property (class, readonly, nonatomic) OFColor *red; @property (class, readonly, nonatomic) OFColor *purple; @property (class, readonly, nonatomic) OFColor *fuchsia; @@ -97,11 +97,11 @@ * * The RGBA value is (0.5, 0.5, 0.5, 1). * * @return The HTML color `gray` */ -+ (OFColor *)grey OF_DEPRECATED(ObjFW, 1, 1, "Use gray instead"); ++ (OFColor *)grey OF_DEPRECATED(ObjFW, 1, 1, "Use +[gray] instead"); /** * @brief Returns the HTML color `white`. * * The RGBA value is (1, 1, 1, 1). Index: src/OFColor.m ================================================================== --- src/OFColor.m +++ src/OFColor.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteArray.h ================================================================== --- src/OFConcreteArray.h +++ src/OFConcreteArray.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteArray.m ================================================================== --- src/OFConcreteArray.m +++ src/OFConcreteArray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteColor.h ================================================================== --- src/OFConcreteColor.h +++ src/OFConcreteColor.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteColor.m ================================================================== --- src/OFConcreteColor.m +++ src/OFConcreteColor.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteCountedSet.h ================================================================== --- src/OFConcreteCountedSet.h +++ src/OFConcreteCountedSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteCountedSet.m ================================================================== --- src/OFConcreteCountedSet.m +++ src/OFConcreteCountedSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteData.h ================================================================== --- src/OFConcreteData.h +++ src/OFConcreteData.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteData.m ================================================================== --- src/OFConcreteData.m +++ src/OFConcreteData.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteDate.h ================================================================== --- src/OFConcreteDate.h +++ src/OFConcreteDate.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteDate.m ================================================================== --- src/OFConcreteDate.m +++ src/OFConcreteDate.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteDictionary.h ================================================================== --- src/OFConcreteDictionary.h +++ src/OFConcreteDictionary.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteDictionary.m ================================================================== --- src/OFConcreteDictionary.m +++ src/OFConcreteDictionary.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteMutableArray.h ================================================================== --- src/OFConcreteMutableArray.h +++ src/OFConcreteMutableArray.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteMutableArray.m ================================================================== --- src/OFConcreteMutableArray.m +++ src/OFConcreteMutableArray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteMutableData.h ================================================================== --- src/OFConcreteMutableData.h +++ src/OFConcreteMutableData.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteMutableData.m ================================================================== --- src/OFConcreteMutableData.m +++ src/OFConcreteMutableData.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteMutableDictionary.h ================================================================== --- src/OFConcreteMutableDictionary.h +++ src/OFConcreteMutableDictionary.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteMutableDictionary.m ================================================================== --- src/OFConcreteMutableDictionary.m +++ src/OFConcreteMutableDictionary.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteMutableSet.h ================================================================== --- src/OFConcreteMutableSet.h +++ src/OFConcreteMutableSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteMutableSet.m ================================================================== --- src/OFConcreteMutableSet.m +++ src/OFConcreteMutableSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteNumber.h ================================================================== --- src/OFConcreteNumber.h +++ src/OFConcreteNumber.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteNumber.m ================================================================== --- src/OFConcreteNumber.m +++ src/OFConcreteNumber.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteSet.h ================================================================== --- src/OFConcreteSet.h +++ src/OFConcreteSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteSet.m ================================================================== --- src/OFConcreteSet.m +++ src/OFConcreteSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteSubarray.h ================================================================== --- src/OFConcreteSubarray.h +++ src/OFConcreteSubarray.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteSubarray.m ================================================================== --- src/OFConcreteSubarray.m +++ src/OFConcreteSubarray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteValue.h ================================================================== --- src/OFConcreteValue.h +++ src/OFConcreteValue.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConcreteValue.m ================================================================== --- src/OFConcreteValue.m +++ src/OFConcreteValue.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCondition.h ================================================================== --- src/OFCondition.h +++ src/OFCondition.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCondition.m ================================================================== --- src/OFCondition.m +++ src/OFCondition.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConstantString.h ================================================================== --- src/OFConstantString.h +++ src/OFConstantString.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFConstantString.m ================================================================== --- src/OFConstantString.m +++ src/OFConstantString.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCountedSet.h ================================================================== --- src/OFCountedSet.h +++ src/OFCountedSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCountedSet.m ================================================================== --- src/OFCountedSet.m +++ src/OFCountedSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFCryptographicHash.h ================================================================== --- src/OFCryptographicHash.h +++ src/OFCryptographicHash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDDPSocket.h ================================================================== --- src/OFDDPSocket.h +++ src/OFDDPSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDDPSocket.m ================================================================== --- src/OFDDPSocket.m +++ src/OFDDPSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSQuery.h ================================================================== --- src/OFDNSQuery.h +++ src/OFDNSQuery.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSQuery.m ================================================================== --- src/OFDNSQuery.m +++ src/OFDNSQuery.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSResolver.h ================================================================== --- src/OFDNSResolver.h +++ src/OFDNSResolver.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSResolver.m ================================================================== --- src/OFDNSResolver.m +++ src/OFDNSResolver.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSResolverSettings.h ================================================================== --- src/OFDNSResolverSettings.h +++ src/OFDNSResolverSettings.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSResolverSettings.m ================================================================== --- src/OFDNSResolverSettings.m +++ src/OFDNSResolverSettings.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSResourceRecord.h ================================================================== --- src/OFDNSResourceRecord.h +++ src/OFDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSResourceRecord.m ================================================================== --- src/OFDNSResourceRecord.m +++ src/OFDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSResponse.h ================================================================== --- src/OFDNSResponse.h +++ src/OFDNSResponse.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDNSResponse.m ================================================================== --- src/OFDNSResponse.m +++ src/OFDNSResponse.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFData+CryptographicHashing.h ================================================================== --- src/OFData+CryptographicHashing.h +++ src/OFData+CryptographicHashing.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFData+CryptographicHashing.m ================================================================== --- src/OFData+CryptographicHashing.m +++ src/OFData+CryptographicHashing.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFData+MessagePackParsing.h ================================================================== --- src/OFData+MessagePackParsing.h +++ src/OFData+MessagePackParsing.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFData+MessagePackParsing.m ================================================================== --- src/OFData+MessagePackParsing.m +++ src/OFData+MessagePackParsing.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFData.h ================================================================== --- src/OFData.h +++ src/OFData.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFData.m ================================================================== --- src/OFData.m +++ src/OFData.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDatagramSocket.h ================================================================== --- src/OFDatagramSocket.h +++ src/OFDatagramSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDatagramSocket.m ================================================================== --- src/OFDatagramSocket.m +++ src/OFDatagramSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDate.h ================================================================== --- src/OFDate.h +++ src/OFDate.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDate.m ================================================================== --- src/OFDate.m +++ src/OFDate.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDictionary.h ================================================================== --- src/OFDictionary.h +++ src/OFDictionary.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFDictionary.m ================================================================== --- src/OFDictionary.m +++ src/OFDictionary.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFEmbeddedIRIHandler.h ================================================================== --- src/OFEmbeddedIRIHandler.h +++ src/OFEmbeddedIRIHandler.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFEmbeddedIRIHandler.m ================================================================== --- src/OFEmbeddedIRIHandler.m +++ src/OFEmbeddedIRIHandler.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFEnumerator.h ================================================================== --- src/OFEnumerator.h +++ src/OFEnumerator.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFEnumerator.m ================================================================== --- src/OFEnumerator.m +++ src/OFEnumerator.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFEpollKernelEventObserver.h ================================================================== --- src/OFEpollKernelEventObserver.h +++ src/OFEpollKernelEventObserver.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFEpollKernelEventObserver.m ================================================================== --- src/OFEpollKernelEventObserver.m +++ src/OFEpollKernelEventObserver.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFFile.h ================================================================== --- src/OFFile.h +++ src/OFFile.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFFile.m ================================================================== --- src/OFFile.m +++ src/OFFile.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFFileIRIHandler.h ================================================================== --- src/OFFileIRIHandler.h +++ src/OFFileIRIHandler.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFFileIRIHandler.m ================================================================== --- src/OFFileIRIHandler.m +++ src/OFFileIRIHandler.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -41,10 +41,11 @@ #endif #if defined(OF_FREEBSD) || defined(OF_NETBSD) # include #endif #ifdef OF_HAIKU +# include # include #endif #ifdef OF_DJGPP # include #endif Index: src/OFFileManager.h ================================================================== --- src/OFFileManager.h +++ src/OFFileManager.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -23,22 +23,23 @@ OF_ASSUME_NONNULL_BEGIN /** @file */ #ifdef OF_HAVE_FILES -# if (defined(OF_HAVE_CHMOD) && !defined(OF_AMIGAOS)) || defined(DOXYGEN) +# if (defined(OF_HAVE_CHMOD) && !defined(OF_AMIGAOS) && \ + !defined(OF_NINTENDO_DS)) || defined(DOXYGEN) # define OF_FILE_MANAGER_SUPPORTS_PERMISSIONS # endif # if (defined(OF_HAVE_CHOWN) && !defined(OF_AMIGAOS)) || defined(DOXYGEN) # define OF_FILE_MANAGER_SUPPORTS_OWNER # endif -# if (defined(OF_HAVE_LINK) && !defined(OF_AMIGAOS) && !defined(OF_HAIKU)) || \ - defined(OF_WINDOWS) || defined(DOXYGEN) +# if (defined(OF_HAVE_LINK) && !defined(OF_AMIGAOS) && !defined(OF_HAIKU) && \ + !defined(OF_NINTENDO_DS)) || defined(OF_WINDOWS) || defined(DOXYGEN) # define OF_FILE_MANAGER_SUPPORTS_LINKS # endif -# if (defined(OF_HAVE_SYMLINK) && !defined(OF_AMIGAOS)) || \ - defined(OF_WINDOWS) || defined(DOXYGEN) +# if (defined(OF_HAVE_SYMLINK) && !defined(OF_AMIGAOS) && \ + !defined(OF_NINTENDO_DS)) || defined(OF_WINDOWS) || defined(DOXYGEN) # define OF_FILE_MANAGER_SUPPORTS_SYMLINKS # endif # if defined(OF_LINUX) || defined(OF_MACOS) || defined(OF_FREEBSD) || \ defined(OF_NETBSD) || defined(OF_HAIKU) || defined(OF_SOLARIS) || \ defined(DOXYGEN) Index: src/OFFileManager.m ================================================================== --- src/OFFileManager.m +++ src/OFFileManager.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFFileManagerConstants.inc ================================================================== --- src/OFFileManagerConstants.inc +++ src/OFFileManagerConstants.inc @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFGZIPStream.h ================================================================== --- src/OFGZIPStream.h +++ src/OFGZIPStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFGZIPStream.m ================================================================== --- src/OFGZIPStream.m +++ src/OFGZIPStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHINFODNSResourceRecord.h ================================================================== --- src/OFHINFODNSResourceRecord.h +++ src/OFHINFODNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHINFODNSResourceRecord.m ================================================================== --- src/OFHINFODNSResourceRecord.m +++ src/OFHINFODNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHMAC.h ================================================================== --- src/OFHMAC.h +++ src/OFHMAC.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHMAC.m ================================================================== --- src/OFHMAC.m +++ src/OFHMAC.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPClient.h ================================================================== --- src/OFHTTPClient.h +++ src/OFHTTPClient.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPClient.m ================================================================== --- src/OFHTTPClient.m +++ src/OFHTTPClient.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPCookie.h ================================================================== --- src/OFHTTPCookie.h +++ src/OFHTTPCookie.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPCookie.m ================================================================== --- src/OFHTTPCookie.m +++ src/OFHTTPCookie.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPCookieManager.h ================================================================== --- src/OFHTTPCookieManager.h +++ src/OFHTTPCookieManager.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPCookieManager.m ================================================================== --- src/OFHTTPCookieManager.m +++ src/OFHTTPCookieManager.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPIRIHandler.h ================================================================== --- src/OFHTTPIRIHandler.h +++ src/OFHTTPIRIHandler.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPIRIHandler.m ================================================================== --- src/OFHTTPIRIHandler.m +++ src/OFHTTPIRIHandler.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPRequest.h ================================================================== --- src/OFHTTPRequest.h +++ src/OFHTTPRequest.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPRequest.m ================================================================== --- src/OFHTTPRequest.m +++ src/OFHTTPRequest.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPResponse.h ================================================================== --- src/OFHTTPResponse.h +++ src/OFHTTPResponse.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPResponse.m ================================================================== --- src/OFHTTPResponse.m +++ src/OFHTTPResponse.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPServer.h ================================================================== --- src/OFHTTPServer.h +++ src/OFHTTPServer.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHTTPServer.m ================================================================== --- src/OFHTTPServer.m +++ src/OFHTTPServer.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -31,10 +31,11 @@ #import "OFDate.h" #import "OFDictionary.h" #import "OFHTTPRequest.h" #import "OFHTTPResponse.h" #import "OFIRI.h" +#import "OFIRI+Private.h" #import "OFNumber.h" #import "OFSocket.h" #import "OFSocket+Private.h" #import "OFString.h" #import "OFString+Private.h" @@ -478,12 +479,23 @@ if ([key isEqual: @"Host"]) { pos = [value rangeOfString: @":" options: OFStringSearchBackwards].location; if (pos != OFNotFound) { + OFString *host = [value substringToIndex: pos]; + + if ([host hasPrefix: @"["] && [host hasSuffix: @"]"]) { + OFString *IPv6 = [host substringWithRange: + OFMakeRange(1, host.length - 2)]; + + if (_OFIRIIsIPv6Host(IPv6)) + host = IPv6; + + } + [_host release]; - _host = [[value substringToIndex: pos] retain]; + _host = [host retain]; @try { unsigned long long portTmp = [value substringFromIndex: pos + 1] .unsignedLongLongValue; Index: src/OFHostAddressResolver.h ================================================================== --- src/OFHostAddressResolver.h +++ src/OFHostAddressResolver.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHostAddressResolver.m ================================================================== --- src/OFHostAddressResolver.m +++ src/OFHostAddressResolver.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHuffmanTree.h ================================================================== --- src/OFHuffmanTree.h +++ src/OFHuffmanTree.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFHuffmanTree.m ================================================================== --- src/OFHuffmanTree.m +++ src/OFHuffmanTree.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINICategory.h ================================================================== --- src/OFINICategory.h +++ src/OFINICategory.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINICategory.m ================================================================== --- src/OFINICategory.m +++ src/OFINICategory.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINIFile.h ================================================================== --- src/OFINIFile.h +++ src/OFINIFile.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINIFile.m ================================================================== --- src/OFINIFile.m +++ src/OFINIFile.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINIFileSettings.h ================================================================== --- src/OFINIFileSettings.h +++ src/OFINIFileSettings.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINIFileSettings.m ================================================================== --- src/OFINIFileSettings.m +++ src/OFINIFileSettings.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINISection+Private.h ================================================================== --- src/OFINISection+Private.h +++ src/OFINISection+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINISection.h ================================================================== --- src/OFINISection.h +++ src/OFINISection.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFINISection.m ================================================================== --- src/OFINISection.m +++ src/OFINISection.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -108,11 +108,11 @@ { if (self != [OFINISection class]) return; needsEscapeCharacterSet = [[OFCharacterSet alloc] - initWithCharactersInString: @"\r\n\f\"\\="]; + initWithCharactersInString: @"\r\n\f\"\\=;#"]; } - (instancetype)of_initWithName: (OFString *)name OF_DIRECT { self = [super init]; Index: src/OFIPXSocket.h ================================================================== --- src/OFIPXSocket.h +++ src/OFIPXSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFIPXSocket.m ================================================================== --- src/OFIPXSocket.m +++ src/OFIPXSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFIRI+Private.h ================================================================== --- src/OFIRI+Private.h +++ src/OFIRI+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFIRI.h ================================================================== --- src/OFIRI.h +++ src/OFIRI.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFIRI.m ================================================================== --- src/OFIRI.m +++ src/OFIRI.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFIRIHandler.h ================================================================== --- src/OFIRIHandler.h +++ src/OFIRIHandler.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFIRIHandler.m ================================================================== --- src/OFIRIHandler.m +++ src/OFIRIHandler.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFInflate64Stream.h ================================================================== --- src/OFInflate64Stream.h +++ src/OFInflate64Stream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFInflate64Stream.m ================================================================== --- src/OFInflate64Stream.m +++ src/OFInflate64Stream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFInflateStream.h ================================================================== --- src/OFInflateStream.h +++ src/OFInflateStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFInflateStream.m ================================================================== --- src/OFInflateStream.m +++ src/OFInflateStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFInvertedCharacterSet.h ================================================================== --- src/OFInvertedCharacterSet.h +++ src/OFInvertedCharacterSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFInvertedCharacterSet.m ================================================================== --- src/OFInvertedCharacterSet.m +++ src/OFInvertedCharacterSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFInvocation.h ================================================================== --- src/OFInvocation.h +++ src/OFInvocation.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFInvocation.m ================================================================== --- src/OFInvocation.m +++ src/OFInvocation.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFJSONRepresentation.h ================================================================== --- src/OFJSONRepresentation.h +++ src/OFJSONRepresentation.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFKernelEventObserver.h ================================================================== --- src/OFKernelEventObserver.h +++ src/OFKernelEventObserver.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFKernelEventObserver.m ================================================================== --- src/OFKernelEventObserver.m +++ src/OFKernelEventObserver.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFKeyValueCoding.h ================================================================== --- src/OFKeyValueCoding.h +++ src/OFKeyValueCoding.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFKqueueKernelEventObserver.h ================================================================== --- src/OFKqueueKernelEventObserver.h +++ src/OFKqueueKernelEventObserver.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFKqueueKernelEventObserver.m ================================================================== --- src/OFKqueueKernelEventObserver.m +++ src/OFKqueueKernelEventObserver.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLHAArchive.h ================================================================== --- src/OFLHAArchive.h +++ src/OFLHAArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLHAArchive.m ================================================================== --- src/OFLHAArchive.m +++ src/OFLHAArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLHAArchiveEntry+Private.h ================================================================== --- src/OFLHAArchiveEntry+Private.h +++ src/OFLHAArchiveEntry+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLHAArchiveEntry.h ================================================================== --- src/OFLHAArchiveEntry.h +++ src/OFLHAArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLHAArchiveEntry.m ================================================================== --- src/OFLHAArchiveEntry.m +++ src/OFLHAArchiveEntry.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLHADecompressingStream.h ================================================================== --- src/OFLHADecompressingStream.h +++ src/OFLHADecompressingStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLHADecompressingStream.m ================================================================== --- src/OFLHADecompressingStream.m +++ src/OFLHADecompressingStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLOCDNSResourceRecord.h ================================================================== --- src/OFLOCDNSResourceRecord.h +++ src/OFLOCDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLOCDNSResourceRecord.m ================================================================== --- src/OFLOCDNSResourceRecord.m +++ src/OFLOCDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFList.h ================================================================== --- src/OFList.h +++ src/OFList.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFList.m ================================================================== --- src/OFList.m +++ src/OFList.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLocale.h ================================================================== --- src/OFLocale.h +++ src/OFLocale.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLocale.m ================================================================== --- src/OFLocale.m +++ src/OFLocale.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFLocking.h ================================================================== --- src/OFLocking.h +++ src/OFLocking.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMD5Hash.h ================================================================== --- src/OFMD5Hash.h +++ src/OFMD5Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMD5Hash.m ================================================================== --- src/OFMD5Hash.m +++ src/OFMD5Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMXDNSResourceRecord.h ================================================================== --- src/OFMXDNSResourceRecord.h +++ src/OFMXDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMXDNSResourceRecord.m ================================================================== --- src/OFMXDNSResourceRecord.m +++ src/OFMXDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMapTable+Private.h ================================================================== --- src/OFMapTable+Private.h +++ src/OFMapTable+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMapTable.h ================================================================== --- src/OFMapTable.h +++ src/OFMapTable.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMapTable.m ================================================================== --- src/OFMapTable.m +++ src/OFMapTable.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMatrix4x4.h ================================================================== --- src/OFMatrix4x4.h +++ src/OFMatrix4x4.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMatrix4x4.m ================================================================== --- src/OFMatrix4x4.m +++ src/OFMatrix4x4.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMemoryStream.h ================================================================== --- src/OFMemoryStream.h +++ src/OFMemoryStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMemoryStream.m ================================================================== --- src/OFMemoryStream.m +++ src/OFMemoryStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMessagePackExtension.h ================================================================== --- src/OFMessagePackExtension.h +++ src/OFMessagePackExtension.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMessagePackExtension.m ================================================================== --- src/OFMessagePackExtension.m +++ src/OFMessagePackExtension.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMessagePackRepresentation.h ================================================================== --- src/OFMessagePackRepresentation.h +++ src/OFMessagePackRepresentation.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMethodSignature.h ================================================================== --- src/OFMethodSignature.h +++ src/OFMethodSignature.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMethodSignature.m ================================================================== --- src/OFMethodSignature.m +++ src/OFMethodSignature.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableArchiveEntry.h ================================================================== --- src/OFMutableArchiveEntry.h +++ src/OFMutableArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableArray.h ================================================================== --- src/OFMutableArray.h +++ src/OFMutableArray.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableArray.m ================================================================== --- src/OFMutableArray.m +++ src/OFMutableArray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableData.h ================================================================== --- src/OFMutableData.h +++ src/OFMutableData.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableData.m ================================================================== --- src/OFMutableData.m +++ src/OFMutableData.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableDictionary.h ================================================================== --- src/OFMutableDictionary.h +++ src/OFMutableDictionary.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableDictionary.m ================================================================== --- src/OFMutableDictionary.m +++ src/OFMutableDictionary.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableIRI.h ================================================================== --- src/OFMutableIRI.h +++ src/OFMutableIRI.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableIRI.m ================================================================== --- src/OFMutableIRI.m +++ src/OFMutableIRI.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableLHAArchiveEntry.h ================================================================== --- src/OFMutableLHAArchiveEntry.h +++ src/OFMutableLHAArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableLHAArchiveEntry.m ================================================================== --- src/OFMutableLHAArchiveEntry.m +++ src/OFMutableLHAArchiveEntry.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutablePair.h ================================================================== --- src/OFMutablePair.h +++ src/OFMutablePair.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutablePair.m ================================================================== --- src/OFMutablePair.m +++ src/OFMutablePair.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableSet.h ================================================================== --- src/OFMutableSet.h +++ src/OFMutableSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableSet.m ================================================================== --- src/OFMutableSet.m +++ src/OFMutableSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableString.h ================================================================== --- src/OFMutableString.h +++ src/OFMutableString.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableString.m ================================================================== --- src/OFMutableString.m +++ src/OFMutableString.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableTarArchiveEntry.h ================================================================== --- src/OFMutableTarArchiveEntry.h +++ src/OFMutableTarArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableTarArchiveEntry.m ================================================================== --- src/OFMutableTarArchiveEntry.m +++ src/OFMutableTarArchiveEntry.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableTriple.h ================================================================== --- src/OFMutableTriple.h +++ src/OFMutableTriple.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableTriple.m ================================================================== --- src/OFMutableTriple.m +++ src/OFMutableTriple.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableUTF8String.h ================================================================== --- src/OFMutableUTF8String.h +++ src/OFMutableUTF8String.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableUTF8String.m ================================================================== --- src/OFMutableUTF8String.m +++ src/OFMutableUTF8String.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -266,19 +266,20 @@ - (void)appendUTF8String: (const char *)UTF8String { size_t UTF8StringLength = strlen(UTF8String); size_t length; + bool containsNull; if (UTF8StringLength >= 3 && memcmp(UTF8String, "\xEF\xBB\xBF", 3) == 0) { UTF8String += 3; UTF8StringLength -= 3; } switch (_OFUTF8StringCheck(UTF8String, UTF8StringLength, &length, - &_s->containsNull)) { + &containsNull)) { case 1: _s->isUTF8 = true; break; case -1: @throw [OFInvalidEncodingException exception]; @@ -290,25 +291,29 @@ memcpy(_s->cString + _s->cStringLength, UTF8String, UTF8StringLength + 1); _s->cStringLength += UTF8StringLength; _s->length += length; + + if (containsNull) + _s->containsNull = containsNull; } - (void)appendUTF8String: (const char *)UTF8String length: (size_t)UTF8StringLength { size_t length; + bool containsNull; if (UTF8StringLength >= 3 && memcmp(UTF8String, "\xEF\xBB\xBF", 3) == 0) { UTF8String += 3; UTF8StringLength -= 3; } switch (_OFUTF8StringCheck(UTF8String, UTF8StringLength, &length, - &_s->containsNull)) { + &containsNull)) { case 1: _s->isUTF8 = true; break; case -1: @throw [OFInvalidEncodingException exception]; @@ -321,10 +326,13 @@ _s->cStringLength += UTF8StringLength; _s->length += length; _s->cString[_s->cStringLength] = 0; + + if (containsNull) + _s->containsNull = true; } - (void)appendCString: (const char *)cString encoding: (OFStringEncoding)encoding { @@ -378,18 +386,23 @@ _s->isUTF8 = true; if (((OFMutableUTF8String *)string)->_s->containsNull) _s->containsNull = true; } else { + bool containsNull; + switch (_OFUTF8StringCheck(UTF8String, UTF8StringLength, - NULL, &_s->containsNull)) { + NULL, &containsNull)) { case 1: _s->isUTF8 = true; break; case -1: @throw [OFInvalidEncodingException exception]; } + + if (containsNull) + _s->containsNull = true; } } - (void)appendCharacters: (const OFUnichar *)characters length: (size_t)length { @@ -487,18 +500,23 @@ _s->isUTF8 = true; if (((OFMutableUTF8String *)string)->_s->containsNull) _s->containsNull = true; } else { + bool containsNull; + switch (_OFUTF8StringCheck(UTF8String, UTF8StringLength, - NULL, &_s->containsNull)) { + NULL, &containsNull)) { case 1: _s->isUTF8 = true; break; case -1: @throw [OFInvalidEncodingException exception]; } + + if (containsNull) + _s->containsNull = true; } } - (void)deleteCharactersInRange: (OFRange)range { @@ -604,18 +622,23 @@ _s->isUTF8 = true; if (((OFMutableUTF8String *)replacement)->_s->containsNull) _s->containsNull = true; } else { + bool containsNull; + switch (_OFUTF8StringCheck(replacementString, replacementLength, - NULL, &_s->containsNull)) { + NULL, &containsNull)) { case 1: _s->isUTF8 = true; break; case -1: @throw [OFInvalidEncodingException exception]; } + + if (containsNull) + _s->containsNull = containsNull; } if (_s->containsNull) { _s->containsNull = false; @@ -710,18 +733,23 @@ _s->isUTF8 = true; if (((OFMutableUTF8String *)replacement)->_s->containsNull) _s->containsNull = true; } else { + bool containsNull; + switch (_OFUTF8StringCheck(replacementString, replacementLength, - NULL, &_s->containsNull)) { + NULL, &containsNull)) { case 1: _s->isUTF8 = true; break; case -1: @throw [OFInvalidEncodingException exception]; } + + if (containsNull) + _s->containsNull = true; } if (_s->containsNull) { _s->containsNull = false; Index: src/OFMutableZIPArchiveEntry.h ================================================================== --- src/OFMutableZIPArchiveEntry.h +++ src/OFMutableZIPArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableZIPArchiveEntry.m ================================================================== --- src/OFMutableZIPArchiveEntry.m +++ src/OFMutableZIPArchiveEntry.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableZooArchiveEntry.h ================================================================== --- src/OFMutableZooArchiveEntry.h +++ src/OFMutableZooArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutableZooArchiveEntry.m ================================================================== --- src/OFMutableZooArchiveEntry.m +++ src/OFMutableZooArchiveEntry.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutex.h ================================================================== --- src/OFMutex.h +++ src/OFMutex.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFMutex.m ================================================================== --- src/OFMutex.m +++ src/OFMutex.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNSDNSResourceRecord.h ================================================================== --- src/OFNSDNSResourceRecord.h +++ src/OFNSDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNSDNSResourceRecord.m ================================================================== --- src/OFNSDNSResourceRecord.m +++ src/OFNSDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNotification.h ================================================================== --- src/OFNotification.h +++ src/OFNotification.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNotification.m ================================================================== --- src/OFNotification.m +++ src/OFNotification.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNotificationCenter.h ================================================================== --- src/OFNotificationCenter.h +++ src/OFNotificationCenter.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -103,11 +103,11 @@ object: (nullable id)object usingBlock: (OFNotificationCenterBlock)block; /** * @brief Removes an observer. The specified observer must be one returned by - * @ref addObserver:selector:name:object:. + * @ref addObserverForName:object:usingBlock:. * * @param observer The object that was returned when adding the observer */ - (void)removeObserver: (id)observer; #endif Index: src/OFNotificationCenter.m ================================================================== --- src/OFNotificationCenter.m +++ src/OFNotificationCenter.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNull.h ================================================================== --- src/OFNull.h +++ src/OFNull.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNull.m ================================================================== --- src/OFNull.m +++ src/OFNull.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNumber.h ================================================================== --- src/OFNumber.h +++ src/OFNumber.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFNumber.m ================================================================== --- src/OFNumber.m +++ src/OFNumber.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFObject+KeyValueCoding.h ================================================================== --- src/OFObject+KeyValueCoding.h +++ src/OFObject+KeyValueCoding.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFObject+KeyValueCoding.m ================================================================== --- src/OFObject+KeyValueCoding.m +++ src/OFObject+KeyValueCoding.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFObject.h ================================================================== --- src/OFObject.h +++ src/OFObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -736,10 +736,14 @@ * @brief A method which is called once when the class is loaded into the * runtime. * * Derived classes can override this to execute their own code when the class * is loaded. + * + * @warning You cannot make use of other classes from inside this method! Only + * the class itself, its superclasses and instances of the class or + * its superclassses can be messaged! */ + (void)load; /** * @brief A method which is called when the class is unloaded from the runtime. Index: src/OFObject.m ================================================================== --- src/OFObject.m +++ src/OFObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFOnce.h ================================================================== --- src/OFOnce.h +++ src/OFOnce.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFOnce.m ================================================================== --- src/OFOnce.m +++ src/OFOnce.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFOptionsParser.h ================================================================== --- src/OFOptionsParser.h +++ src/OFOptionsParser.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFOptionsParser.m ================================================================== --- src/OFOptionsParser.m +++ src/OFOptionsParser.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPBKDF2.h ================================================================== --- src/OFPBKDF2.h +++ src/OFPBKDF2.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPBKDF2.m ================================================================== --- src/OFPBKDF2.m +++ src/OFPBKDF2.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPTRDNSResourceRecord.h ================================================================== --- src/OFPTRDNSResourceRecord.h +++ src/OFPTRDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPTRDNSResourceRecord.m ================================================================== --- src/OFPTRDNSResourceRecord.m +++ src/OFPTRDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPair.h ================================================================== --- src/OFPair.h +++ src/OFPair.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPair.m ================================================================== --- src/OFPair.m +++ src/OFPair.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPlainCondition.h ================================================================== --- src/OFPlainCondition.h +++ src/OFPlainCondition.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPlainCondition.m ================================================================== --- src/OFPlainCondition.m +++ src/OFPlainCondition.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPlainMutex.h ================================================================== --- src/OFPlainMutex.h +++ src/OFPlainMutex.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPlainMutex.m ================================================================== --- src/OFPlainMutex.m +++ src/OFPlainMutex.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPlainThread.h ================================================================== --- src/OFPlainThread.h +++ src/OFPlainThread.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPlainThread.m ================================================================== --- src/OFPlainThread.m +++ src/OFPlainThread.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPlugin.h ================================================================== --- src/OFPlugin.h +++ src/OFPlugin.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPlugin.m ================================================================== --- src/OFPlugin.m +++ src/OFPlugin.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPollKernelEventObserver.h ================================================================== --- src/OFPollKernelEventObserver.h +++ src/OFPollKernelEventObserver.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFPollKernelEventObserver.m ================================================================== --- src/OFPollKernelEventObserver.m +++ src/OFPollKernelEventObserver.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRIPEMD160Hash.h ================================================================== --- src/OFRIPEMD160Hash.h +++ src/OFRIPEMD160Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRIPEMD160Hash.m ================================================================== --- src/OFRIPEMD160Hash.m +++ src/OFRIPEMD160Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRPDNSResourceRecord.h ================================================================== --- src/OFRPDNSResourceRecord.h +++ src/OFRPDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRPDNSResourceRecord.m ================================================================== --- src/OFRPDNSResourceRecord.m +++ src/OFRPDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRangeCharacterSet.h ================================================================== --- src/OFRangeCharacterSet.h +++ src/OFRangeCharacterSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRangeCharacterSet.m ================================================================== --- src/OFRangeCharacterSet.m +++ src/OFRangeCharacterSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRecursiveMutex.h ================================================================== --- src/OFRecursiveMutex.h +++ src/OFRecursiveMutex.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRecursiveMutex.m ================================================================== --- src/OFRecursiveMutex.m +++ src/OFRecursiveMutex.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRunLoop+Private.h ================================================================== --- src/OFRunLoop+Private.h +++ src/OFRunLoop+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRunLoop.h ================================================================== --- src/OFRunLoop.h +++ src/OFRunLoop.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFRunLoop.m ================================================================== --- src/OFRunLoop.m +++ src/OFRunLoop.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -1843,12 +1843,14 @@ { void *pool = objc_autoreleasePoolPush(); OFRunLoopMode previousMode = _currentMode; OFRunLoopState *state = stateForMode(self, mode, false, false); - if (state == nil) + if (state == nil) { + objc_autoreleasePoolPop(pool); return; + } _currentMode = mode; @try { OFDate *nextTimer; #if defined(OF_AMIGAOS) && defined(OF_HAVE_THREADS) @@ -1884,10 +1886,11 @@ #endif if (timer.valid) { [timer of_reschedule]; [timer fire]; + objc_autoreleasePoolPop(pool); return; } } #ifdef OF_HAVE_THREADS Index: src/OFRunLoopConstants.inc ================================================================== --- src/OFRunLoopConstants.inc +++ src/OFRunLoopConstants.inc @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSCTPSocket.h ================================================================== --- src/OFSCTPSocket.h +++ src/OFSCTPSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSCTPSocket.m ================================================================== --- src/OFSCTPSocket.m +++ src/OFSCTPSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA1Hash.h ================================================================== --- src/OFSHA1Hash.h +++ src/OFSHA1Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA1Hash.m ================================================================== --- src/OFSHA1Hash.m +++ src/OFSHA1Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA224Hash.h ================================================================== --- src/OFSHA224Hash.h +++ src/OFSHA224Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA224Hash.m ================================================================== --- src/OFSHA224Hash.m +++ src/OFSHA224Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA224Or256Hash.h ================================================================== --- src/OFSHA224Or256Hash.h +++ src/OFSHA224Or256Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA224Or256Hash.m ================================================================== --- src/OFSHA224Or256Hash.m +++ src/OFSHA224Or256Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA256Hash.h ================================================================== --- src/OFSHA256Hash.h +++ src/OFSHA256Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA256Hash.m ================================================================== --- src/OFSHA256Hash.m +++ src/OFSHA256Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA384Hash.h ================================================================== --- src/OFSHA384Hash.h +++ src/OFSHA384Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA384Hash.m ================================================================== --- src/OFSHA384Hash.m +++ src/OFSHA384Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA384Or512Hash.h ================================================================== --- src/OFSHA384Or512Hash.h +++ src/OFSHA384Or512Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA384Or512Hash.m ================================================================== --- src/OFSHA384Or512Hash.m +++ src/OFSHA384Or512Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA512Hash.h ================================================================== --- src/OFSHA512Hash.h +++ src/OFSHA512Hash.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSHA512Hash.m ================================================================== --- src/OFSHA512Hash.m +++ src/OFSHA512Hash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSOADNSResourceRecord.h ================================================================== --- src/OFSOADNSResourceRecord.h +++ src/OFSOADNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSOADNSResourceRecord.m ================================================================== --- src/OFSOADNSResourceRecord.m +++ src/OFSOADNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSPXSocket.h ================================================================== --- src/OFSPXSocket.h +++ src/OFSPXSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSPXSocket.m ================================================================== --- src/OFSPXSocket.m +++ src/OFSPXSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSPXStreamSocket.h ================================================================== --- src/OFSPXStreamSocket.h +++ src/OFSPXStreamSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSPXStreamSocket.m ================================================================== --- src/OFSPXStreamSocket.m +++ src/OFSPXStreamSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSRVDNSResourceRecord.h ================================================================== --- src/OFSRVDNSResourceRecord.h +++ src/OFSRVDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSRVDNSResourceRecord.m ================================================================== --- src/OFSRVDNSResourceRecord.m +++ src/OFSRVDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSandbox.h ================================================================== --- src/OFSandbox.h +++ src/OFSandbox.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSandbox.m ================================================================== --- src/OFSandbox.m +++ src/OFSandbox.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFScrypt.h ================================================================== --- src/OFScrypt.h +++ src/OFScrypt.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFScrypt.m ================================================================== --- src/OFScrypt.m +++ src/OFScrypt.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSecureData.h ================================================================== --- src/OFSecureData.h +++ src/OFSecureData.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSecureData.m ================================================================== --- src/OFSecureData.m +++ src/OFSecureData.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSeekableStream.h ================================================================== --- src/OFSeekableStream.h +++ src/OFSeekableStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSeekableStream.m ================================================================== --- src/OFSeekableStream.m +++ src/OFSeekableStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSelectKernelEventObserver.h ================================================================== --- src/OFSelectKernelEventObserver.h +++ src/OFSelectKernelEventObserver.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSelectKernelEventObserver.m ================================================================== --- src/OFSelectKernelEventObserver.m +++ src/OFSelectKernelEventObserver.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSequencedPacketSocket+Private.h ================================================================== --- src/OFSequencedPacketSocket+Private.h +++ src/OFSequencedPacketSocket+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSequencedPacketSocket.h ================================================================== --- src/OFSequencedPacketSocket.h +++ src/OFSequencedPacketSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSequencedPacketSocket.m ================================================================== --- src/OFSequencedPacketSocket.m +++ src/OFSequencedPacketSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSet.h ================================================================== --- src/OFSet.h +++ src/OFSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSet.m ================================================================== --- src/OFSet.m +++ src/OFSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSettings.h ================================================================== --- src/OFSettings.h +++ src/OFSettings.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSettings.m ================================================================== --- src/OFSettings.m +++ src/OFSettings.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSocket+Private.h ================================================================== --- src/OFSocket+Private.h +++ src/OFSocket+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSocket.h ================================================================== --- src/OFSocket.h +++ src/OFSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSocket.m ================================================================== --- src/OFSocket.m +++ src/OFSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSortedList.h ================================================================== --- src/OFSortedList.h +++ src/OFSortedList.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSortedList.m ================================================================== --- src/OFSortedList.m +++ src/OFSortedList.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStdIOStream+Private.h ================================================================== --- src/OFStdIOStream+Private.h +++ src/OFStdIOStream+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStdIOStream.h ================================================================== --- src/OFStdIOStream.h +++ src/OFStdIOStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -36,13 +36,10 @@ * @brief A class for providing standard input, output and error as OFStream. * * The global variables @ref OFStdIn, @ref OFStdOut and @ref OFStdErr are * instances of this class and need no initialization. */ -#ifdef OF_STDIO_STREAM_WIN32_CONSOLE_H -OF_SUBCLASSING_RESTRICTED -#endif @interface OFStdIOStream: OFStream #if !defined(OF_WINDOWS) && !defined(OF_AMIGAOS) && !defined(OF_WII_U) #endif { @@ -51,10 +48,11 @@ bool _closable; #elif !defined(OF_WII_U) int _fd; #endif bool _atEndOfStream; + OF_RESERVE_IVARS(OFStdIOStream, 4) } /** * @brief Whether there is an underlying terminal. */ Index: src/OFStdIOStream.m ================================================================== --- src/OFStdIOStream.m +++ src/OFStdIOStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -30,13 +30,13 @@ # include #endif #import "OFStdIOStream.h" #import "OFStdIOStream+Private.h" +#import "OFApplication.h" #import "OFColor.h" #import "OFDate.h" -#import "OFApplication.h" #ifdef OF_WINDOWS # import "OFWin32ConsoleStdIOStream.h" #endif #import "OFInitializationFailedException.h" Index: src/OFStrFTime.h ================================================================== --- src/OFStrFTime.h +++ src/OFStrFTime.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStrFTime.m ================================================================== --- src/OFStrFTime.m +++ src/OFStrFTime.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStrPTime.h ================================================================== --- src/OFStrPTime.h +++ src/OFStrPTime.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStrPTime.m ================================================================== --- src/OFStrPTime.m +++ src/OFStrPTime.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStream+Private.h ================================================================== --- src/OFStream+Private.h +++ src/OFStream+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStream.h ================================================================== --- src/OFStream.h +++ src/OFStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStream.m ================================================================== --- src/OFStream.m +++ src/OFStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStreamSocket+Private.h ================================================================== --- src/OFStreamSocket+Private.h +++ src/OFStreamSocket+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStreamSocket.h ================================================================== --- src/OFStreamSocket.h +++ src/OFStreamSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFStreamSocket.m ================================================================== --- src/OFStreamSocket.m +++ src/OFStreamSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+CryptographicHashing.h ================================================================== --- src/OFString+CryptographicHashing.h +++ src/OFString+CryptographicHashing.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+CryptographicHashing.m ================================================================== --- src/OFString+CryptographicHashing.m +++ src/OFString+CryptographicHashing.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+JSONParsing.h ================================================================== --- src/OFString+JSONParsing.h +++ src/OFString+JSONParsing.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+JSONParsing.m ================================================================== --- src/OFString+JSONParsing.m +++ src/OFString+JSONParsing.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+PathAdditions.h ================================================================== --- src/OFString+PathAdditions.h +++ src/OFString+PathAdditions.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+PathAdditions.m ================================================================== --- src/OFString+PathAdditions.m +++ src/OFString+PathAdditions.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+PercentEncoding.h ================================================================== --- src/OFString+PercentEncoding.h +++ src/OFString+PercentEncoding.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+PercentEncoding.m ================================================================== --- src/OFString+PercentEncoding.m +++ src/OFString+PercentEncoding.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+Private.h ================================================================== --- src/OFString+Private.h +++ src/OFString+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+PropertyListParsing.h ================================================================== --- src/OFString+PropertyListParsing.h +++ src/OFString+PropertyListParsing.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+PropertyListParsing.m ================================================================== --- src/OFString+PropertyListParsing.m +++ src/OFString+PropertyListParsing.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+XMLEscaping.h ================================================================== --- src/OFString+XMLEscaping.h +++ src/OFString+XMLEscaping.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+XMLEscaping.m ================================================================== --- src/OFString+XMLEscaping.m +++ src/OFString+XMLEscaping.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+XMLUnescaping.h ================================================================== --- src/OFString+XMLUnescaping.h +++ src/OFString+XMLUnescaping.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString+XMLUnescaping.m ================================================================== --- src/OFString+XMLUnescaping.m +++ src/OFString+XMLUnescaping.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFString.h ================================================================== --- src/OFString.h +++ src/OFString.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -182,28 +182,24 @@ /** * @brief The decimal value of the string as a `long long`. * * Leading and trailing whitespaces are ignored. * - * If the string contains any non-number characters, an - * @ref OFInvalidFormatException is thrown. - * - * If the number is too big to fit into a `long long`, an - * @ref OFOutOfRangeException is thrown. + * @throw OFInvalidFormatException The string contains non-number characters + * @throw OFOutOfRangeException The value is too big or too small to fit into + * a `long long` */ @property (readonly, nonatomic) long long longLongValue; /** * @brief The decimal value of the string as an `unsigned long long`. * * Leading and trailing whitespaces are ignored. * - * If the string contains any non-number characters, an - * @ref OFInvalidFormatException is thrown. - * - * If the number is too big to fit into an `unsigned long long`, an - * @ref OFOutOfRangeException is thrown. + * @throw OFInvalidFormatException The string contains non-number characters + * @throw OFOutOfRangeException The value is too big to fit into an + * `unsigned long long` */ @property (readonly, nonatomic) unsigned long long unsignedLongLongValue; /** * @brief The float value of the string as a float. @@ -1081,46 +1077,34 @@ /** * @brief The value of the string in the specified base as a `long long`. * * Leading and trailing whitespaces are ignored. * - * If the string contains any non-number characters, an - * @ref OFInvalidFormatException is thrown. - * - * If the number is too big to fit into a `long long`, an - * @ref OFOutOfRangeException is thrown. - * * @param base The base to use. If the base is 0, base 16 is assumed if the * string starts with 0x (after stripping white spaces). If the * string starts with 0, base 8 is assumed. Otherwise, base 10 is * assumed. * @return The value of the string in the specified base - * @throw OFInvalidFormatException The string cannot be parsed as a `long long` - * @throw OFOutOfRangeException The value cannot be represented as a `long long` + * @throw OFInvalidFormatException The string contains non-number characters + * @throw OFOutOfRangeException The value is too big or too small to fit into + * a `long long` */ - (long long)longLongValueWithBase: (unsigned char)base; /** * @brief The value of the string in the specified base as an * `unsigned long long`. * * Leading and trailing whitespaces are ignored. * - * If the string contains any non-number characters, an - * @ref OFInvalidFormatException is thrown. - * - * If the number is too big to fit into an `unsigned long long`, an - * @ref OFOutOfRangeException is thrown. - * * @param base The base to use. If the base is 0, base 16 is assumed if the * string starts with 0x (after stripping white spaces). If the * string starts with 0, base 8 is assumed. Otherwise, base 10 is * assumed. * @return The value of the string in the specified base - * @throw OFInvalidFormatException The string cannot be parsed as an - * `unsigned long long` - * @throw OFOutOfRangeException The value cannot be represented as an + * @throw OFInvalidFormatException The string contains non-number characters + * @throw OFOutOfRangeException The value is too big to fit into an * `unsigned long long` */ - (unsigned long long)unsignedLongLongValueWithBase: (unsigned char)base; /** Index: src/OFString.m ================================================================== --- src/OFString.m +++ src/OFString.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -2383,11 +2383,11 @@ - (long long)longLongValueWithBase: (unsigned char)base { void *pool = objc_autoreleasePoolPush(); const char *UTF8String = self.UTF8String; bool negative = false; - long long value = 0; + unsigned long long value = 0; while (OFASCIIIsSpace(*UTF8String)) UTF8String++; switch (*UTF8String) { @@ -2435,22 +2435,30 @@ @throw [OFInvalidFormatException exception]; if (c >= base) @throw [OFInvalidFormatException exception]; - if (LLONG_MAX / base < value || LLONG_MAX - (value * base) < c) + if (ULLONG_MAX / base < value || + ULLONG_MAX - (value * base) < c) @throw [OFOutOfRangeException exception]; value = (value * base) + c; } - if (negative) - value *= -1; - objc_autoreleasePoolPop(pool); - return value; + if (negative) { + if (value > -(unsigned long long)LLONG_MIN) + @throw [OFOutOfRangeException exception]; + + return (long long)-value; + } else { + if (value > (unsigned long long)LLONG_MAX) + @throw [OFOutOfRangeException exception]; + + return (long long)value; + } } - (unsigned long long)unsignedLongLongValue { return [self unsignedLongLongValueWithBase: 10]; Index: src/OFSubarray.h ================================================================== --- src/OFSubarray.h +++ src/OFSubarray.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSubarray.m ================================================================== --- src/OFSubarray.m +++ src/OFSubarray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSubdata.h ================================================================== --- src/OFSubdata.h +++ src/OFSubdata.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSubdata.m ================================================================== --- src/OFSubdata.m +++ src/OFSubdata.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSubprocess.h ================================================================== --- src/OFSubprocess.h +++ src/OFSubprocess.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSubprocess.m ================================================================== --- src/OFSubprocess.m +++ src/OFSubprocess.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSystemInfo+NetworkInterfaces.h ================================================================== --- src/OFSystemInfo+NetworkInterfaces.h +++ src/OFSystemInfo+NetworkInterfaces.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -19,27 +19,30 @@ #import "OFSystemInfo.h" OF_ASSUME_NONNULL_BEGIN -/** - * @brief A dictionary describing a network interface, as returned by - * @ref networkInterfaces. - * - * Keys are of type @ref OFNetworkInterfaceKey. - */ -typedef OFDictionary OF_GENERIC(OFString *, id) *OFNetworkInterface; - /** * @brief A key of an @ref OFNetworkInterface. * * Possible values are: * * * @ref OFNetworkInterfaceIndex */ typedef OFConstantString *OFNetworkInterfaceKey; +/** + * @brief A dictionary describing a network interface, as returned by + * @ref networkInterfaces. + * + * Keys are of type @ref OFNetworkInterfaceKey. + */ +typedef OFDictionary OF_GENERIC(OFNetworkInterfaceKey, id) *OFNetworkInterface; + +#ifdef __cplusplus +extern "C" { +#endif /** * @brief The index of a network interface. * * This maps to an @ref OFNumber. */ @@ -82,10 +85,13 @@ * @brief The AppleTalk addresses of a network interface. * * This maps to an @ref OFData of @ref OFSocketAddress. */ extern OFNetworkInterfaceKey OFNetworkInterfaceAppleTalkAddresses; +#endif +#ifdef __cplusplus +} #endif @interface OFSystemInfo (NetworkInterfaces) #ifdef OF_HAVE_CLASS_PROPERTIES Index: src/OFSystemInfo+NetworkInterfaces.m ================================================================== --- src/OFSystemInfo+NetworkInterfaces.m +++ src/OFSystemInfo+NetworkInterfaces.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSystemInfo.h ================================================================== --- src/OFSystemInfo.h +++ src/OFSystemInfo.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFSystemInfo.m ================================================================== --- src/OFSystemInfo.m +++ src/OFSystemInfo.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -558,11 +558,11 @@ return [OFIRI fileIRIWithPath: [OFString stringWithUTF8String: pathC] isDirectory: true]; # elif defined(OF_AMIGAOS) return [OFIRI fileIRIWithPath: @"PROGDIR:" isDirectory: true]; -# elif defined(OF_WII) || defined(OF_NINTENDO_3DS) +# elif defined(OF_WII) || defined(OF_NINTENDO_DS) || defined(OF_NINTENDO_3DS) return [[OFFileManager defaultManager] currentDirectoryIRI]; # else OFDictionary *env = [OFApplication environment]; OFString *var; OFIRI *IRI; @@ -650,11 +650,11 @@ return [OFIRI fileIRIWithPath: [OFString stringWithUTF8String: pathC] isDirectory: true]; # elif defined(OF_AMIGAOS) return [OFIRI fileIRIWithPath: @"PROGDIR:" isDirectory: true]; -# elif defined(OF_WII) || defined(OF_NINTENDO_3DS) +# elif defined(OF_WII) || defined(OF_NINTENDO_DS) || defined(OF_NINTENDO_3DS) return [[OFFileManager defaultManager] currentDirectoryIRI]; # else OFDictionary *env = [OFApplication environment]; OFString *var; @@ -729,11 +729,11 @@ return nil; return [OFIRI fileIRIWithPath: path isDirectory: true]; # elif defined(OF_MINT) return [OFIRI fileIRIWithPath: @"u:\\tmp" isDirectory: true]; -# elif defined(OF_WII) || defined(OF_NINTENDO_3DS) +# elif defined(OF_WII) || defined(OF_NINTENDO_DS) || defined(OF_NINTENDO_3DS) return [[OFFileManager defaultManager] currentDirectoryIRI]; # elif defined(OF_NINTENDO_SWITCH) static OFOnceControl onceControl = OFOnceControlInitValue; OFOnce(&onceControl, mountTmpFS); Index: src/OFTCPSocket.h ================================================================== --- src/OFTCPSocket.h +++ src/OFTCPSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTCPSocket.m ================================================================== --- src/OFTCPSocket.m +++ src/OFTCPSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTCPSocketSOCKS5Connector.h ================================================================== --- src/OFTCPSocketSOCKS5Connector.h +++ src/OFTCPSocketSOCKS5Connector.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTCPSocketSOCKS5Connector.m ================================================================== --- src/OFTCPSocketSOCKS5Connector.m +++ src/OFTCPSocketSOCKS5Connector.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTLSKey.h ================================================================== --- src/OFTLSKey.h +++ src/OFTLSKey.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTLSKey.m ================================================================== --- src/OFTLSKey.m +++ src/OFTLSKey.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTLSStream.h ================================================================== --- src/OFTLSStream.h +++ src/OFTLSStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTLSStream.m ================================================================== --- src/OFTLSStream.m +++ src/OFTLSStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTXTDNSResourceRecord.h ================================================================== --- src/OFTXTDNSResourceRecord.h +++ src/OFTXTDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTXTDNSResourceRecord.m ================================================================== --- src/OFTXTDNSResourceRecord.m +++ src/OFTXTDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTaggedPointerColor.h ================================================================== --- src/OFTaggedPointerColor.h +++ src/OFTaggedPointerColor.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTaggedPointerColor.m ================================================================== --- src/OFTaggedPointerColor.m +++ src/OFTaggedPointerColor.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTaggedPointerDate.h ================================================================== --- src/OFTaggedPointerDate.h +++ src/OFTaggedPointerDate.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTaggedPointerDate.m ================================================================== --- src/OFTaggedPointerDate.m +++ src/OFTaggedPointerDate.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTaggedPointerNumber.h ================================================================== --- src/OFTaggedPointerNumber.h +++ src/OFTaggedPointerNumber.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTaggedPointerNumber.m ================================================================== --- src/OFTaggedPointerNumber.m +++ src/OFTaggedPointerNumber.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTaggedPointerString.h ================================================================== --- src/OFTaggedPointerString.h +++ src/OFTaggedPointerString.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTaggedPointerString.m ================================================================== --- src/OFTaggedPointerString.m +++ src/OFTaggedPointerString.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTarArchive.h ================================================================== --- src/OFTarArchive.h +++ src/OFTarArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTarArchive.m ================================================================== --- src/OFTarArchive.m +++ src/OFTarArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTarArchiveEntry+Private.h ================================================================== --- src/OFTarArchiveEntry+Private.h +++ src/OFTarArchiveEntry+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTarArchiveEntry.h ================================================================== --- src/OFTarArchiveEntry.h +++ src/OFTarArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTarArchiveEntry.m ================================================================== --- src/OFTarArchiveEntry.m +++ src/OFTarArchiveEntry.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFThread+Private.h ================================================================== --- src/OFThread+Private.h +++ src/OFThread+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFThread.h ================================================================== --- src/OFThread.h +++ src/OFThread.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFThread.m ================================================================== --- src/OFThread.m +++ src/OFThread.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTimer+Private.h ================================================================== --- src/OFTimer+Private.h +++ src/OFTimer+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTimer.h ================================================================== --- src/OFTimer.h +++ src/OFTimer.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTimer.m ================================================================== --- src/OFTimer.m +++ src/OFTimer.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTriple.h ================================================================== --- src/OFTriple.h +++ src/OFTriple.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFTriple.m ================================================================== --- src/OFTriple.m +++ src/OFTriple.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUDPSocket+Private.h ================================================================== --- src/OFUDPSocket+Private.h +++ src/OFUDPSocket+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUDPSocket.h ================================================================== --- src/OFUDPSocket.h +++ src/OFUDPSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUDPSocket.m ================================================================== --- src/OFUDPSocket.m +++ src/OFUDPSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUNIXDatagramSocket.h ================================================================== --- src/OFUNIXDatagramSocket.h +++ src/OFUNIXDatagramSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUNIXDatagramSocket.m ================================================================== --- src/OFUNIXDatagramSocket.m +++ src/OFUNIXDatagramSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUNIXSequencedPacketSocket.h ================================================================== --- src/OFUNIXSequencedPacketSocket.h +++ src/OFUNIXSequencedPacketSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUNIXSequencedPacketSocket.m ================================================================== --- src/OFUNIXSequencedPacketSocket.m +++ src/OFUNIXSequencedPacketSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUNIXStreamSocket.h ================================================================== --- src/OFUNIXStreamSocket.h +++ src/OFUNIXStreamSocket.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUNIXStreamSocket.m ================================================================== --- src/OFUNIXStreamSocket.m +++ src/OFUNIXStreamSocket.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFURIDNSResourceRecord.h ================================================================== --- src/OFURIDNSResourceRecord.h +++ src/OFURIDNSResourceRecord.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFURIDNSResourceRecord.m ================================================================== --- src/OFURIDNSResourceRecord.m +++ src/OFURIDNSResourceRecord.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUTF8String+Private.h ================================================================== --- src/OFUTF8String+Private.h +++ src/OFUTF8String+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUTF8String.h ================================================================== --- src/OFUTF8String.h +++ src/OFUTF8String.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUTF8String.m ================================================================== --- src/OFUTF8String.m +++ src/OFUTF8String.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUUID.h ================================================================== --- src/OFUUID.h +++ src/OFUUID.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFUUID.m ================================================================== --- src/OFUUID.m +++ src/OFUUID.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFValue.h ================================================================== --- src/OFValue.h +++ src/OFValue.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFValue.m ================================================================== --- src/OFValue.m +++ src/OFValue.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFWin32ConsoleStdIOStream.h ================================================================== --- src/OFWin32ConsoleStdIOStream.h +++ src/OFWin32ConsoleStdIOStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFWindowsRegistryKey.h ================================================================== --- src/OFWindowsRegistryKey.h +++ src/OFWindowsRegistryKey.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFWindowsRegistryKey.m ================================================================== --- src/OFWindowsRegistryKey.m +++ src/OFWindowsRegistryKey.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLAttribute.h ================================================================== --- src/OFXMLAttribute.h +++ src/OFXMLAttribute.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLAttribute.m ================================================================== --- src/OFXMLAttribute.m +++ src/OFXMLAttribute.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLCDATA.h ================================================================== --- src/OFXMLCDATA.h +++ src/OFXMLCDATA.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLCDATA.m ================================================================== --- src/OFXMLCDATA.m +++ src/OFXMLCDATA.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLCharacters.h ================================================================== --- src/OFXMLCharacters.h +++ src/OFXMLCharacters.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLCharacters.m ================================================================== --- src/OFXMLCharacters.m +++ src/OFXMLCharacters.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLComment.h ================================================================== --- src/OFXMLComment.h +++ src/OFXMLComment.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLComment.m ================================================================== --- src/OFXMLComment.m +++ src/OFXMLComment.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLElement.h ================================================================== --- src/OFXMLElement.h +++ src/OFXMLElement.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLElement.m ================================================================== --- src/OFXMLElement.m +++ src/OFXMLElement.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLElementBuilder.h ================================================================== --- src/OFXMLElementBuilder.h +++ src/OFXMLElementBuilder.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLElementBuilder.m ================================================================== --- src/OFXMLElementBuilder.m +++ src/OFXMLElementBuilder.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLNode+Private.h ================================================================== --- src/OFXMLNode+Private.h +++ src/OFXMLNode+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLNode.h ================================================================== --- src/OFXMLNode.h +++ src/OFXMLNode.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLNode.m ================================================================== --- src/OFXMLNode.m +++ src/OFXMLNode.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLParser.h ================================================================== --- src/OFXMLParser.h +++ src/OFXMLParser.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLParser.m ================================================================== --- src/OFXMLParser.m +++ src/OFXMLParser.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLProcessingInstruction.h ================================================================== --- src/OFXMLProcessingInstruction.h +++ src/OFXMLProcessingInstruction.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFXMLProcessingInstruction.m ================================================================== --- src/OFXMLProcessingInstruction.m +++ src/OFXMLProcessingInstruction.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZIPArchive+Private.h ================================================================== --- src/OFZIPArchive+Private.h +++ src/OFZIPArchive+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZIPArchive.h ================================================================== --- src/OFZIPArchive.h +++ src/OFZIPArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZIPArchive.m ================================================================== --- src/OFZIPArchive.m +++ src/OFZIPArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZIPArchiveEntry+Private.h ================================================================== --- src/OFZIPArchiveEntry+Private.h +++ src/OFZIPArchiveEntry+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZIPArchiveEntry.h ================================================================== --- src/OFZIPArchiveEntry.h +++ src/OFZIPArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZIPArchiveEntry.m ================================================================== --- src/OFZIPArchiveEntry.m +++ src/OFZIPArchiveEntry.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZooArchive.h ================================================================== --- src/OFZooArchive.h +++ src/OFZooArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZooArchive.m ================================================================== --- src/OFZooArchive.m +++ src/OFZooArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZooArchiveEntry+Private.h ================================================================== --- src/OFZooArchiveEntry+Private.h +++ src/OFZooArchiveEntry+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZooArchiveEntry.h ================================================================== --- src/OFZooArchiveEntry.h +++ src/OFZooArchiveEntry.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/OFZooArchiveEntry.m ================================================================== --- src/OFZooArchiveEntry.m +++ src/OFZooArchiveEntry.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/ObjFW.h ================================================================== --- src/ObjFW.h +++ src/ObjFW.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -75,10 +75,11 @@ #import "OFFileManager.h" #ifdef OF_HAVE_FILES # import "OFFile.h" #endif #import "OFINIFile.h" +#import "OFEmbeddedIRIHandler.h" #import "OFINICategory.h" #import "OFSettings.h" #ifdef OF_HAVE_SOCKETS # import "OFStreamSocket.h" # import "OFDatagramSocket.h" Index: src/bridge/NSArray+OFObject.h ================================================================== --- src/bridge/NSArray+OFObject.h +++ src/bridge/NSArray+OFObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSArray+OFObject.m ================================================================== --- src/bridge/NSArray+OFObject.m +++ src/bridge/NSArray+OFObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSBridging.h ================================================================== --- src/bridge/NSBridging.h +++ src/bridge/NSBridging.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSDictionary+OFObject.h ================================================================== --- src/bridge/NSDictionary+OFObject.h +++ src/bridge/NSDictionary+OFObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSDictionary+OFObject.m ================================================================== --- src/bridge/NSDictionary+OFObject.m +++ src/bridge/NSDictionary+OFObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSEnumerator+OFObject.h ================================================================== --- src/bridge/NSEnumerator+OFObject.h +++ src/bridge/NSEnumerator+OFObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSEnumerator+OFObject.m ================================================================== --- src/bridge/NSEnumerator+OFObject.m +++ src/bridge/NSEnumerator+OFObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSNumber+OFObject.h ================================================================== --- src/bridge/NSNumber+OFObject.h +++ src/bridge/NSNumber+OFObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSNumber+OFObject.m ================================================================== --- src/bridge/NSNumber+OFObject.m +++ src/bridge/NSNumber+OFObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSOFArray.h ================================================================== --- src/bridge/NSOFArray.h +++ src/bridge/NSOFArray.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSOFArray.m ================================================================== --- src/bridge/NSOFArray.m +++ src/bridge/NSOFArray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSOFDictionary.h ================================================================== --- src/bridge/NSOFDictionary.h +++ src/bridge/NSOFDictionary.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSOFDictionary.m ================================================================== --- src/bridge/NSOFDictionary.m +++ src/bridge/NSOFDictionary.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSOFEnumerator.h ================================================================== --- src/bridge/NSOFEnumerator.h +++ src/bridge/NSOFEnumerator.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSOFEnumerator.m ================================================================== --- src/bridge/NSOFEnumerator.m +++ src/bridge/NSOFEnumerator.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSOFSet.h ================================================================== --- src/bridge/NSOFSet.h +++ src/bridge/NSOFSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSOFSet.m ================================================================== --- src/bridge/NSOFSet.m +++ src/bridge/NSOFSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSSet+OFObject.h ================================================================== --- src/bridge/NSSet+OFObject.h +++ src/bridge/NSSet+OFObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSSet+OFObject.m ================================================================== --- src/bridge/NSSet+OFObject.m +++ src/bridge/NSSet+OFObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSString+OFObject.h ================================================================== --- src/bridge/NSString+OFObject.h +++ src/bridge/NSString+OFObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/NSString+OFObject.m ================================================================== --- src/bridge/NSString+OFObject.m +++ src/bridge/NSString+OFObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFArray+NSObject.h ================================================================== --- src/bridge/OFArray+NSObject.h +++ src/bridge/OFArray+NSObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFArray+NSObject.m ================================================================== --- src/bridge/OFArray+NSObject.m +++ src/bridge/OFArray+NSObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFBridging.h ================================================================== --- src/bridge/OFBridging.h +++ src/bridge/OFBridging.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFDictionary+NSObject.h ================================================================== --- src/bridge/OFDictionary+NSObject.h +++ src/bridge/OFDictionary+NSObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFDictionary+NSObject.m ================================================================== --- src/bridge/OFDictionary+NSObject.m +++ src/bridge/OFDictionary+NSObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFEnumerator+NSObject.h ================================================================== --- src/bridge/OFEnumerator+NSObject.h +++ src/bridge/OFEnumerator+NSObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFEnumerator+NSObject.m ================================================================== --- src/bridge/OFEnumerator+NSObject.m +++ src/bridge/OFEnumerator+NSObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFException+Swift.h ================================================================== --- src/bridge/OFException+Swift.h +++ src/bridge/OFException+Swift.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFException+Swift.m ================================================================== --- src/bridge/OFException+Swift.m +++ src/bridge/OFException+Swift.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNSArray.h ================================================================== --- src/bridge/OFNSArray.h +++ src/bridge/OFNSArray.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNSArray.m ================================================================== --- src/bridge/OFNSArray.m +++ src/bridge/OFNSArray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNSDictionary.h ================================================================== --- src/bridge/OFNSDictionary.h +++ src/bridge/OFNSDictionary.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNSDictionary.m ================================================================== --- src/bridge/OFNSDictionary.m +++ src/bridge/OFNSDictionary.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNSEnumerator.h ================================================================== --- src/bridge/OFNSEnumerator.h +++ src/bridge/OFNSEnumerator.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNSEnumerator.m ================================================================== --- src/bridge/OFNSEnumerator.m +++ src/bridge/OFNSEnumerator.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNSSet.h ================================================================== --- src/bridge/OFNSSet.h +++ src/bridge/OFNSSet.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNSSet.m ================================================================== --- src/bridge/OFNSSet.m +++ src/bridge/OFNSSet.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNumber+NSObject.h ================================================================== --- src/bridge/OFNumber+NSObject.h +++ src/bridge/OFNumber+NSObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFNumber+NSObject.m ================================================================== --- src/bridge/OFNumber+NSObject.m +++ src/bridge/OFNumber+NSObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFSet+NSObject.h ================================================================== --- src/bridge/OFSet+NSObject.h +++ src/bridge/OFSet+NSObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFSet+NSObject.m ================================================================== --- src/bridge/OFSet+NSObject.m +++ src/bridge/OFSet+NSObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFString+NSObject.h ================================================================== --- src/bridge/OFString+NSObject.h +++ src/bridge/OFString+NSObject.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/OFString+NSObject.m ================================================================== --- src/bridge/OFString+NSObject.m +++ src/bridge/OFString+NSObject.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/bridge/ObjFWBridge.h ================================================================== --- src/bridge/ObjFWBridge.h +++ src/bridge/ObjFWBridge.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/codepage-437.m ================================================================== --- src/encodings/codepage-437.m +++ src/encodings/codepage-437.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/codepage-850.m ================================================================== --- src/encodings/codepage-850.m +++ src/encodings/codepage-850.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/codepage-852.m ================================================================== --- src/encodings/codepage-852.m +++ src/encodings/codepage-852.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/codepage-858.m ================================================================== --- src/encodings/codepage-858.m +++ src/encodings/codepage-858.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/common.h ================================================================== --- src/encodings/common.h +++ src/encodings/common.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/iso-8859-15.m ================================================================== --- src/encodings/iso-8859-15.m +++ src/encodings/iso-8859-15.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/iso-8859-2.m ================================================================== --- src/encodings/iso-8859-2.m +++ src/encodings/iso-8859-2.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/iso-8859-3.m ================================================================== --- src/encodings/iso-8859-3.m +++ src/encodings/iso-8859-3.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/koi8-r.m ================================================================== --- src/encodings/koi8-r.m +++ src/encodings/koi8-r.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/koi8-u.m ================================================================== --- src/encodings/koi8-u.m +++ src/encodings/koi8-u.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/mac-roman.m ================================================================== --- src/encodings/mac-roman.m +++ src/encodings/mac-roman.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/windows-1250.m ================================================================== --- src/encodings/windows-1250.m +++ src/encodings/windows-1250.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/windows-1251.m ================================================================== --- src/encodings/windows-1251.m +++ src/encodings/windows-1251.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/encodings/windows-1252.m ================================================================== --- src/encodings/windows-1252.m +++ src/encodings/windows-1252.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFAcceptSocketFailedException.h ================================================================== --- src/exceptions/OFAcceptSocketFailedException.h +++ src/exceptions/OFAcceptSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFAcceptSocketFailedException.m ================================================================== --- src/exceptions/OFAcceptSocketFailedException.m +++ src/exceptions/OFAcceptSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFActivateSandboxFailedException.h ================================================================== --- src/exceptions/OFActivateSandboxFailedException.h +++ src/exceptions/OFActivateSandboxFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFActivateSandboxFailedException.m ================================================================== --- src/exceptions/OFActivateSandboxFailedException.m +++ src/exceptions/OFActivateSandboxFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFAllocFailedException.h ================================================================== --- src/exceptions/OFAllocFailedException.h +++ src/exceptions/OFAllocFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFAllocFailedException.m ================================================================== --- src/exceptions/OFAllocFailedException.m +++ src/exceptions/OFAllocFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFAlreadyOpenException.h ================================================================== --- src/exceptions/OFAlreadyOpenException.h +++ src/exceptions/OFAlreadyOpenException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFAlreadyOpenException.m ================================================================== --- src/exceptions/OFAlreadyOpenException.m +++ src/exceptions/OFAlreadyOpenException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindDDPSocketFailedException.h ================================================================== --- src/exceptions/OFBindDDPSocketFailedException.h +++ src/exceptions/OFBindDDPSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindDDPSocketFailedException.m ================================================================== --- src/exceptions/OFBindDDPSocketFailedException.m +++ src/exceptions/OFBindDDPSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindIPSocketFailedException.h ================================================================== --- src/exceptions/OFBindIPSocketFailedException.h +++ src/exceptions/OFBindIPSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindIPSocketFailedException.m ================================================================== --- src/exceptions/OFBindIPSocketFailedException.m +++ src/exceptions/OFBindIPSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindIPXSocketFailedException.h ================================================================== --- src/exceptions/OFBindIPXSocketFailedException.h +++ src/exceptions/OFBindIPXSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindIPXSocketFailedException.m ================================================================== --- src/exceptions/OFBindIPXSocketFailedException.m +++ src/exceptions/OFBindIPXSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindSocketFailedException.h ================================================================== --- src/exceptions/OFBindSocketFailedException.h +++ src/exceptions/OFBindSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindSocketFailedException.m ================================================================== --- src/exceptions/OFBindSocketFailedException.m +++ src/exceptions/OFBindSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindUNIXSocketFailedException.h ================================================================== --- src/exceptions/OFBindUNIXSocketFailedException.h +++ src/exceptions/OFBindUNIXSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBindUNIXSocketFailedException.m ================================================================== --- src/exceptions/OFBindUNIXSocketFailedException.m +++ src/exceptions/OFBindUNIXSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBroadcastConditionFailedException.h ================================================================== --- src/exceptions/OFBroadcastConditionFailedException.h +++ src/exceptions/OFBroadcastConditionFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFBroadcastConditionFailedException.m ================================================================== --- src/exceptions/OFBroadcastConditionFailedException.m +++ src/exceptions/OFBroadcastConditionFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFChangeCurrentDirectoryFailedException.h ================================================================== --- src/exceptions/OFChangeCurrentDirectoryFailedException.h +++ src/exceptions/OFChangeCurrentDirectoryFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFChangeCurrentDirectoryFailedException.m ================================================================== --- src/exceptions/OFChangeCurrentDirectoryFailedException.m +++ src/exceptions/OFChangeCurrentDirectoryFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFChecksumMismatchException.h ================================================================== --- src/exceptions/OFChecksumMismatchException.h +++ src/exceptions/OFChecksumMismatchException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFChecksumMismatchException.m ================================================================== --- src/exceptions/OFChecksumMismatchException.m +++ src/exceptions/OFChecksumMismatchException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConditionStillWaitingException.h ================================================================== --- src/exceptions/OFConditionStillWaitingException.h +++ src/exceptions/OFConditionStillWaitingException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConditionStillWaitingException.m ================================================================== --- src/exceptions/OFConditionStillWaitingException.m +++ src/exceptions/OFConditionStillWaitingException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConnectIPSocketFailedException.h ================================================================== --- src/exceptions/OFConnectIPSocketFailedException.h +++ src/exceptions/OFConnectIPSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConnectIPSocketFailedException.m ================================================================== --- src/exceptions/OFConnectIPSocketFailedException.m +++ src/exceptions/OFConnectIPSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConnectSPXSocketFailedException.h ================================================================== --- src/exceptions/OFConnectSPXSocketFailedException.h +++ src/exceptions/OFConnectSPXSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConnectSPXSocketFailedException.m ================================================================== --- src/exceptions/OFConnectSPXSocketFailedException.m +++ src/exceptions/OFConnectSPXSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConnectSocketFailedException.h ================================================================== --- src/exceptions/OFConnectSocketFailedException.h +++ src/exceptions/OFConnectSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConnectSocketFailedException.m ================================================================== --- src/exceptions/OFConnectSocketFailedException.m +++ src/exceptions/OFConnectSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConnectUNIXSocketFailedException.h ================================================================== --- src/exceptions/OFConnectUNIXSocketFailedException.h +++ src/exceptions/OFConnectUNIXSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFConnectUNIXSocketFailedException.m ================================================================== --- src/exceptions/OFConnectUNIXSocketFailedException.m +++ src/exceptions/OFConnectUNIXSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFCopyItemFailedException.h ================================================================== --- src/exceptions/OFCopyItemFailedException.h +++ src/exceptions/OFCopyItemFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFCopyItemFailedException.m ================================================================== --- src/exceptions/OFCopyItemFailedException.m +++ src/exceptions/OFCopyItemFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFCreateDirectoryFailedException.h ================================================================== --- src/exceptions/OFCreateDirectoryFailedException.h +++ src/exceptions/OFCreateDirectoryFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFCreateDirectoryFailedException.m ================================================================== --- src/exceptions/OFCreateDirectoryFailedException.m +++ src/exceptions/OFCreateDirectoryFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFCreateSymbolicLinkFailedException.h ================================================================== --- src/exceptions/OFCreateSymbolicLinkFailedException.h +++ src/exceptions/OFCreateSymbolicLinkFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFCreateSymbolicLinkFailedException.m ================================================================== --- src/exceptions/OFCreateSymbolicLinkFailedException.m +++ src/exceptions/OFCreateSymbolicLinkFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFCreateWindowsRegistryKeyFailedException.h ================================================================== --- src/exceptions/OFCreateWindowsRegistryKeyFailedException.h +++ src/exceptions/OFCreateWindowsRegistryKeyFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFCreateWindowsRegistryKeyFailedException.m ================================================================== --- src/exceptions/OFCreateWindowsRegistryKeyFailedException.m +++ src/exceptions/OFCreateWindowsRegistryKeyFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFDNSQueryFailedException.h ================================================================== --- src/exceptions/OFDNSQueryFailedException.h +++ src/exceptions/OFDNSQueryFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFDNSQueryFailedException.m ================================================================== --- src/exceptions/OFDNSQueryFailedException.m +++ src/exceptions/OFDNSQueryFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFDeleteWindowsRegistryKeyFailedException.h ================================================================== --- src/exceptions/OFDeleteWindowsRegistryKeyFailedException.h +++ src/exceptions/OFDeleteWindowsRegistryKeyFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFDeleteWindowsRegistryKeyFailedException.m ================================================================== --- src/exceptions/OFDeleteWindowsRegistryKeyFailedException.m +++ src/exceptions/OFDeleteWindowsRegistryKeyFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFDeleteWindowsRegistryValueFailedException.h ================================================================== --- src/exceptions/OFDeleteWindowsRegistryValueFailedException.h +++ src/exceptions/OFDeleteWindowsRegistryValueFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFDeleteWindowsRegistryValueFailedException.m ================================================================== --- src/exceptions/OFDeleteWindowsRegistryValueFailedException.m +++ src/exceptions/OFDeleteWindowsRegistryValueFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFEnumerationMutationException.h ================================================================== --- src/exceptions/OFEnumerationMutationException.h +++ src/exceptions/OFEnumerationMutationException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFEnumerationMutationException.m ================================================================== --- src/exceptions/OFEnumerationMutationException.m +++ src/exceptions/OFEnumerationMutationException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFException.h ================================================================== --- src/exceptions/OFException.h +++ src/exceptions/OFException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFException.m ================================================================== --- src/exceptions/OFException.m +++ src/exceptions/OFException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFGetCurrentDirectoryFailedException.h ================================================================== --- src/exceptions/OFGetCurrentDirectoryFailedException.h +++ src/exceptions/OFGetCurrentDirectoryFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFGetCurrentDirectoryFailedException.m ================================================================== --- src/exceptions/OFGetCurrentDirectoryFailedException.m +++ src/exceptions/OFGetCurrentDirectoryFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFGetItemAttributesFailedException.h ================================================================== --- src/exceptions/OFGetItemAttributesFailedException.h +++ src/exceptions/OFGetItemAttributesFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFGetItemAttributesFailedException.m ================================================================== --- src/exceptions/OFGetItemAttributesFailedException.m +++ src/exceptions/OFGetItemAttributesFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFGetOptionFailedException.h ================================================================== --- src/exceptions/OFGetOptionFailedException.h +++ src/exceptions/OFGetOptionFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFGetOptionFailedException.m ================================================================== --- src/exceptions/OFGetOptionFailedException.m +++ src/exceptions/OFGetOptionFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFGetWindowsRegistryValueFailedException.h ================================================================== --- src/exceptions/OFGetWindowsRegistryValueFailedException.h +++ src/exceptions/OFGetWindowsRegistryValueFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFGetWindowsRegistryValueFailedException.m ================================================================== --- src/exceptions/OFGetWindowsRegistryValueFailedException.m +++ src/exceptions/OFGetWindowsRegistryValueFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFHTTPRequestFailedException.h ================================================================== --- src/exceptions/OFHTTPRequestFailedException.h +++ src/exceptions/OFHTTPRequestFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFHTTPRequestFailedException.m ================================================================== --- src/exceptions/OFHTTPRequestFailedException.m +++ src/exceptions/OFHTTPRequestFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFHashAlreadyCalculatedException.h ================================================================== --- src/exceptions/OFHashAlreadyCalculatedException.h +++ src/exceptions/OFHashAlreadyCalculatedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFHashAlreadyCalculatedException.m ================================================================== --- src/exceptions/OFHashAlreadyCalculatedException.m +++ src/exceptions/OFHashAlreadyCalculatedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFHashNotCalculatedException.h ================================================================== --- src/exceptions/OFHashNotCalculatedException.h +++ src/exceptions/OFHashNotCalculatedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFHashNotCalculatedException.m ================================================================== --- src/exceptions/OFHashNotCalculatedException.m +++ src/exceptions/OFHashNotCalculatedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInitializationFailedException.h ================================================================== --- src/exceptions/OFInitializationFailedException.h +++ src/exceptions/OFInitializationFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInitializationFailedException.m ================================================================== --- src/exceptions/OFInitializationFailedException.m +++ src/exceptions/OFInitializationFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidArgumentException.h ================================================================== --- src/exceptions/OFInvalidArgumentException.h +++ src/exceptions/OFInvalidArgumentException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidArgumentException.m ================================================================== --- src/exceptions/OFInvalidArgumentException.m +++ src/exceptions/OFInvalidArgumentException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidEncodingException.h ================================================================== --- src/exceptions/OFInvalidEncodingException.h +++ src/exceptions/OFInvalidEncodingException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidEncodingException.m ================================================================== --- src/exceptions/OFInvalidEncodingException.m +++ src/exceptions/OFInvalidEncodingException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidFormatException.h ================================================================== --- src/exceptions/OFInvalidFormatException.h +++ src/exceptions/OFInvalidFormatException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidFormatException.m ================================================================== --- src/exceptions/OFInvalidFormatException.m +++ src/exceptions/OFInvalidFormatException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidJSONException.h ================================================================== --- src/exceptions/OFInvalidJSONException.h +++ src/exceptions/OFInvalidJSONException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidJSONException.m ================================================================== --- src/exceptions/OFInvalidJSONException.m +++ src/exceptions/OFInvalidJSONException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidServerResponseException.h ================================================================== --- src/exceptions/OFInvalidServerResponseException.h +++ src/exceptions/OFInvalidServerResponseException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFInvalidServerResponseException.m ================================================================== --- src/exceptions/OFInvalidServerResponseException.m +++ src/exceptions/OFInvalidServerResponseException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFJoinThreadFailedException.h ================================================================== --- src/exceptions/OFJoinThreadFailedException.h +++ src/exceptions/OFJoinThreadFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFJoinThreadFailedException.m ================================================================== --- src/exceptions/OFJoinThreadFailedException.m +++ src/exceptions/OFJoinThreadFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFLinkItemFailedException.h ================================================================== --- src/exceptions/OFLinkItemFailedException.h +++ src/exceptions/OFLinkItemFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFLinkItemFailedException.m ================================================================== --- src/exceptions/OFLinkItemFailedException.m +++ src/exceptions/OFLinkItemFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFListenOnSocketFailedException.h ================================================================== --- src/exceptions/OFListenOnSocketFailedException.h +++ src/exceptions/OFListenOnSocketFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFListenOnSocketFailedException.m ================================================================== --- src/exceptions/OFListenOnSocketFailedException.m +++ src/exceptions/OFListenOnSocketFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFLoadPluginFailedException.h ================================================================== --- src/exceptions/OFLoadPluginFailedException.h +++ src/exceptions/OFLoadPluginFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFLoadPluginFailedException.m ================================================================== --- src/exceptions/OFLoadPluginFailedException.m +++ src/exceptions/OFLoadPluginFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFLockFailedException.h ================================================================== --- src/exceptions/OFLockFailedException.h +++ src/exceptions/OFLockFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFLockFailedException.m ================================================================== --- src/exceptions/OFLockFailedException.m +++ src/exceptions/OFLockFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFMalformedXMLException.h ================================================================== --- src/exceptions/OFMalformedXMLException.h +++ src/exceptions/OFMalformedXMLException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFMalformedXMLException.m ================================================================== --- src/exceptions/OFMalformedXMLException.m +++ src/exceptions/OFMalformedXMLException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFMoveItemFailedException.h ================================================================== --- src/exceptions/OFMoveItemFailedException.h +++ src/exceptions/OFMoveItemFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFMoveItemFailedException.m ================================================================== --- src/exceptions/OFMoveItemFailedException.m +++ src/exceptions/OFMoveItemFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFNotImplementedException.h ================================================================== --- src/exceptions/OFNotImplementedException.h +++ src/exceptions/OFNotImplementedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFNotImplementedException.m ================================================================== --- src/exceptions/OFNotImplementedException.m +++ src/exceptions/OFNotImplementedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFNotOpenException.h ================================================================== --- src/exceptions/OFNotOpenException.h +++ src/exceptions/OFNotOpenException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFNotOpenException.m ================================================================== --- src/exceptions/OFNotOpenException.m +++ src/exceptions/OFNotOpenException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFObserveKernelEventsFailedException.h ================================================================== --- src/exceptions/OFObserveKernelEventsFailedException.h +++ src/exceptions/OFObserveKernelEventsFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFObserveKernelEventsFailedException.m ================================================================== --- src/exceptions/OFObserveKernelEventsFailedException.m +++ src/exceptions/OFObserveKernelEventsFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFOpenItemFailedException.h ================================================================== --- src/exceptions/OFOpenItemFailedException.h +++ src/exceptions/OFOpenItemFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFOpenItemFailedException.m ================================================================== --- src/exceptions/OFOpenItemFailedException.m +++ src/exceptions/OFOpenItemFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFOpenWindowsRegistryKeyFailedException.h ================================================================== --- src/exceptions/OFOpenWindowsRegistryKeyFailedException.h +++ src/exceptions/OFOpenWindowsRegistryKeyFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFOpenWindowsRegistryKeyFailedException.m ================================================================== --- src/exceptions/OFOpenWindowsRegistryKeyFailedException.m +++ src/exceptions/OFOpenWindowsRegistryKeyFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFOutOfMemoryException.h ================================================================== --- src/exceptions/OFOutOfMemoryException.h +++ src/exceptions/OFOutOfMemoryException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFOutOfMemoryException.m ================================================================== --- src/exceptions/OFOutOfMemoryException.m +++ src/exceptions/OFOutOfMemoryException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFOutOfRangeException.h ================================================================== --- src/exceptions/OFOutOfRangeException.h +++ src/exceptions/OFOutOfRangeException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFOutOfRangeException.m ================================================================== --- src/exceptions/OFOutOfRangeException.m +++ src/exceptions/OFOutOfRangeException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFReadFailedException.h ================================================================== --- src/exceptions/OFReadFailedException.h +++ src/exceptions/OFReadFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFReadFailedException.m ================================================================== --- src/exceptions/OFReadFailedException.m +++ src/exceptions/OFReadFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFReadOrWriteFailedException.h ================================================================== --- src/exceptions/OFReadOrWriteFailedException.h +++ src/exceptions/OFReadOrWriteFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFReadOrWriteFailedException.m ================================================================== --- src/exceptions/OFReadOrWriteFailedException.m +++ src/exceptions/OFReadOrWriteFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFRemoveItemFailedException.h ================================================================== --- src/exceptions/OFRemoveItemFailedException.h +++ src/exceptions/OFRemoveItemFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFRemoveItemFailedException.m ================================================================== --- src/exceptions/OFRemoveItemFailedException.m +++ src/exceptions/OFRemoveItemFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFResolveHostFailedException.h ================================================================== --- src/exceptions/OFResolveHostFailedException.h +++ src/exceptions/OFResolveHostFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFResolveHostFailedException.m ================================================================== --- src/exceptions/OFResolveHostFailedException.m +++ src/exceptions/OFResolveHostFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSeekFailedException.h ================================================================== --- src/exceptions/OFSeekFailedException.h +++ src/exceptions/OFSeekFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSeekFailedException.m ================================================================== --- src/exceptions/OFSeekFailedException.m +++ src/exceptions/OFSeekFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSetItemAttributesFailedException.h ================================================================== --- src/exceptions/OFSetItemAttributesFailedException.h +++ src/exceptions/OFSetItemAttributesFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSetItemAttributesFailedException.m ================================================================== --- src/exceptions/OFSetItemAttributesFailedException.m +++ src/exceptions/OFSetItemAttributesFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSetOptionFailedException.h ================================================================== --- src/exceptions/OFSetOptionFailedException.h +++ src/exceptions/OFSetOptionFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSetOptionFailedException.m ================================================================== --- src/exceptions/OFSetOptionFailedException.m +++ src/exceptions/OFSetOptionFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSetWindowsRegistryValueFailedException.h ================================================================== --- src/exceptions/OFSetWindowsRegistryValueFailedException.h +++ src/exceptions/OFSetWindowsRegistryValueFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSetWindowsRegistryValueFailedException.m ================================================================== --- src/exceptions/OFSetWindowsRegistryValueFailedException.m +++ src/exceptions/OFSetWindowsRegistryValueFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSignalConditionFailedException.h ================================================================== --- src/exceptions/OFSignalConditionFailedException.h +++ src/exceptions/OFSignalConditionFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFSignalConditionFailedException.m ================================================================== --- src/exceptions/OFSignalConditionFailedException.m +++ src/exceptions/OFSignalConditionFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFStartThreadFailedException.h ================================================================== --- src/exceptions/OFStartThreadFailedException.h +++ src/exceptions/OFStartThreadFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFStartThreadFailedException.m ================================================================== --- src/exceptions/OFStartThreadFailedException.m +++ src/exceptions/OFStartThreadFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFStillLockedException.h ================================================================== --- src/exceptions/OFStillLockedException.h +++ src/exceptions/OFStillLockedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFStillLockedException.m ================================================================== --- src/exceptions/OFStillLockedException.m +++ src/exceptions/OFStillLockedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFTLSHandshakeFailedException.h ================================================================== --- src/exceptions/OFTLSHandshakeFailedException.h +++ src/exceptions/OFTLSHandshakeFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFTLSHandshakeFailedException.m ================================================================== --- src/exceptions/OFTLSHandshakeFailedException.m +++ src/exceptions/OFTLSHandshakeFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFThreadStillRunningException.h ================================================================== --- src/exceptions/OFThreadStillRunningException.h +++ src/exceptions/OFThreadStillRunningException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFThreadStillRunningException.m ================================================================== --- src/exceptions/OFThreadStillRunningException.m +++ src/exceptions/OFThreadStillRunningException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFTruncatedDataException.h ================================================================== --- src/exceptions/OFTruncatedDataException.h +++ src/exceptions/OFTruncatedDataException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFTruncatedDataException.m ================================================================== --- src/exceptions/OFTruncatedDataException.m +++ src/exceptions/OFTruncatedDataException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnboundNamespaceException.h ================================================================== --- src/exceptions/OFUnboundNamespaceException.h +++ src/exceptions/OFUnboundNamespaceException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnboundNamespaceException.m ================================================================== --- src/exceptions/OFUnboundNamespaceException.m +++ src/exceptions/OFUnboundNamespaceException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnboundPrefixException.h ================================================================== --- src/exceptions/OFUnboundPrefixException.h +++ src/exceptions/OFUnboundPrefixException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnboundPrefixException.m ================================================================== --- src/exceptions/OFUnboundPrefixException.m +++ src/exceptions/OFUnboundPrefixException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUndefinedKeyException.h ================================================================== --- src/exceptions/OFUndefinedKeyException.h +++ src/exceptions/OFUndefinedKeyException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUndefinedKeyException.m ================================================================== --- src/exceptions/OFUndefinedKeyException.m +++ src/exceptions/OFUndefinedKeyException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnknownXMLEntityException.h ================================================================== --- src/exceptions/OFUnknownXMLEntityException.h +++ src/exceptions/OFUnknownXMLEntityException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnknownXMLEntityException.m ================================================================== --- src/exceptions/OFUnknownXMLEntityException.m +++ src/exceptions/OFUnknownXMLEntityException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnlockFailedException.h ================================================================== --- src/exceptions/OFUnlockFailedException.h +++ src/exceptions/OFUnlockFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnlockFailedException.m ================================================================== --- src/exceptions/OFUnlockFailedException.m +++ src/exceptions/OFUnlockFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnsupportedProtocolException.h ================================================================== --- src/exceptions/OFUnsupportedProtocolException.h +++ src/exceptions/OFUnsupportedProtocolException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnsupportedProtocolException.m ================================================================== --- src/exceptions/OFUnsupportedProtocolException.m +++ src/exceptions/OFUnsupportedProtocolException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnsupportedVersionException.h ================================================================== --- src/exceptions/OFUnsupportedVersionException.h +++ src/exceptions/OFUnsupportedVersionException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFUnsupportedVersionException.m ================================================================== --- src/exceptions/OFUnsupportedVersionException.m +++ src/exceptions/OFUnsupportedVersionException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFWaitForConditionFailedException.h ================================================================== --- src/exceptions/OFWaitForConditionFailedException.h +++ src/exceptions/OFWaitForConditionFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFWaitForConditionFailedException.m ================================================================== --- src/exceptions/OFWaitForConditionFailedException.m +++ src/exceptions/OFWaitForConditionFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFWriteFailedException.h ================================================================== --- src/exceptions/OFWriteFailedException.h +++ src/exceptions/OFWriteFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/exceptions/OFWriteFailedException.m ================================================================== --- src/exceptions/OFWriteFailedException.m +++ src/exceptions/OFWriteFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/apple-forwarding-amd64.S ================================================================== --- src/forwarding/apple-forwarding-amd64.S +++ src/forwarding/apple-forwarding-amd64.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/apple-forwarding-arm.S ================================================================== --- src/forwarding/apple-forwarding-arm.S +++ src/forwarding/apple-forwarding-arm.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/apple-forwarding-arm64.S ================================================================== --- src/forwarding/apple-forwarding-arm64.S +++ src/forwarding/apple-forwarding-arm64.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/apple-forwarding-powerpc.S ================================================================== --- src/forwarding/apple-forwarding-powerpc.S +++ src/forwarding/apple-forwarding-powerpc.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/apple-forwarding-x86.S ================================================================== --- src/forwarding/apple-forwarding-x86.S +++ src/forwarding/apple-forwarding-x86.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-amd64-elf.S ================================================================== --- src/forwarding/forwarding-amd64-elf.S +++ src/forwarding/forwarding-amd64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-amd64-macho.S ================================================================== --- src/forwarding/forwarding-amd64-macho.S +++ src/forwarding/forwarding-amd64-macho.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-amd64-win64.S ================================================================== --- src/forwarding/forwarding-amd64-win64.S +++ src/forwarding/forwarding-amd64-win64.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-arm-elf.S ================================================================== --- src/forwarding/forwarding-arm-elf.S +++ src/forwarding/forwarding-arm-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-arm64-elf.S ================================================================== --- src/forwarding/forwarding-arm64-elf.S +++ src/forwarding/forwarding-arm64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-arm64-win64.S ================================================================== --- src/forwarding/forwarding-arm64-win64.S +++ src/forwarding/forwarding-arm64-win64.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-loongarch64-elf.S ================================================================== --- src/forwarding/forwarding-loongarch64-elf.S +++ src/forwarding/forwarding-loongarch64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-mips-elf.S ================================================================== --- src/forwarding/forwarding-mips-elf.S +++ src/forwarding/forwarding-mips-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-mips64-n64-elf.S ================================================================== --- src/forwarding/forwarding-mips64-n64-elf.S +++ src/forwarding/forwarding-mips64-n64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-powerpc-elf.S ================================================================== --- src/forwarding/forwarding-powerpc-elf.S +++ src/forwarding/forwarding-powerpc-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-powerpc64-elf-v2.S ================================================================== --- src/forwarding/forwarding-powerpc64-elf-v2.S +++ src/forwarding/forwarding-powerpc64-elf-v2.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-powerpc64-elf.S ================================================================== --- src/forwarding/forwarding-powerpc64-elf.S +++ src/forwarding/forwarding-powerpc64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-riscv64-elf.S ================================================================== --- src/forwarding/forwarding-riscv64-elf.S +++ src/forwarding/forwarding-riscv64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-sparc-elf.S ================================================================== --- src/forwarding/forwarding-sparc-elf.S +++ src/forwarding/forwarding-sparc-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-sparc64-elf.S ================================================================== --- src/forwarding/forwarding-sparc64-elf.S +++ src/forwarding/forwarding-sparc64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-x86-elf.S ================================================================== --- src/forwarding/forwarding-x86-elf.S +++ src/forwarding/forwarding-x86-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding-x86-win32.S ================================================================== --- src/forwarding/forwarding-x86-win32.S +++ src/forwarding/forwarding-x86-win32.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/forwarding/forwarding.S ================================================================== --- src/forwarding/forwarding.S +++ src/forwarding/forwarding.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHDualSenseGamepad+Private.h ================================================================== --- src/hid/OHDualSenseGamepad+Private.h +++ src/hid/OHDualSenseGamepad+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -27,9 +27,9 @@ @interface OHDualSenseGamepad () #if defined(OF_LINUX) && defined(OF_HAVE_FILES) #endif -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHDualSenseGamepad.h ================================================================== --- src/hid/OHDualSenseGamepad.h +++ src/hid/OHDualSenseGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHDualSenseGamepad.m ================================================================== --- src/hid/OHDualSenseGamepad.m +++ src/hid/OHDualSenseGamepad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHDualShock4Gamepad+Private.h ================================================================== --- src/hid/OHDualShock4Gamepad+Private.h +++ src/hid/OHDualShock4Gamepad+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -27,9 +27,9 @@ @interface OHDualShock4Gamepad () #if defined(OF_LINUX) && defined(OF_HAVE_FILES) #endif -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHDualShock4Gamepad.h ================================================================== --- src/hid/OHDualShock4Gamepad.h +++ src/hid/OHDualShock4Gamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHDualShock4Gamepad.m ================================================================== --- src/hid/OHDualShock4Gamepad.m +++ src/hid/OHDualShock4Gamepad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHEmulatedGameControllerAxis.h ================================================================== --- src/hid/OHEmulatedGameControllerAxis.h +++ src/hid/OHEmulatedGameControllerAxis.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -32,9 +32,9 @@ - (instancetype)oh_initWithName: (OFString *)name analog: (bool)analog OF_UNAVAILABLE; - (instancetype) oh_initWithNegativeButton: (OHGameControllerButton *)negativeButton positiveButton: (OHGameControllerButton *)positiveButton - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; + OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHEmulatedGameControllerAxis.m ================================================================== --- src/hid/OHEmulatedGameControllerAxis.m +++ src/hid/OHEmulatedGameControllerAxis.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHEmulatedGameControllerButton.h ================================================================== --- src/hid/OHEmulatedGameControllerButton.h +++ src/hid/OHEmulatedGameControllerButton.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -31,10 +31,9 @@ } - (instancetype)oh_initWithName: (OFString *)name analog: (bool)analog OF_UNAVAILABLE; - (instancetype)oh_initWithAxis: (OHGameControllerAxis *)axis - positive: (bool)positive - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; + positive: (bool)positive OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHEmulatedGameControllerButton.m ================================================================== --- src/hid/OHEmulatedGameControllerButton.m +++ src/hid/OHEmulatedGameControllerButton.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHEmulatedGameControllerTriggerButton.h ================================================================== --- src/hid/OHEmulatedGameControllerTriggerButton.h +++ src/hid/OHEmulatedGameControllerTriggerButton.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -37,9 +37,9 @@ axis: (OHGameControllerAxis *)axis; - (instancetype)oh_initWithName: (OFString *)name analog: (bool)analog OF_UNAVAILABLE; - (instancetype)oh_initWithName: (OFString *)name axis: (OHGameControllerAxis *)axis - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; + OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHEmulatedGameControllerTriggerButton.m ================================================================== --- src/hid/OHEmulatedGameControllerTriggerButton.m +++ src/hid/OHEmulatedGameControllerTriggerButton.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHEvdevExtendedGamepad.h ================================================================== --- src/hid/OHEvdevExtendedGamepad.h +++ src/hid/OHEvdevExtendedGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHEvdevExtendedGamepad.m ================================================================== --- src/hid/OHEvdevExtendedGamepad.m +++ src/hid/OHEvdevExtendedGamepad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHEvdevGameController.h ================================================================== --- src/hid/OHEvdevGameController.h +++ src/hid/OHEvdevGameController.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -37,16 +37,15 @@ OFString *_name; id _profile; } - (instancetype)oh_init OF_UNAVAILABLE; -- (instancetype)oh_initWithPath: (OFString *)path - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_initWithPath: (OFString *)path OF_METHOD_FAMILY(init); - (void)oh_pollState; @end extern const uint16_t OHEvdevButtonIDs[]; extern const size_t OHNumEvdevButtonIDs; extern const uint16_t OHEvdevAxisIDs[]; extern const size_t OHNumEvdevAxisIDs; OF_ASSUME_NONNULL_END Index: src/hid/OHEvdevGameController.m ================================================================== --- src/hid/OHEvdevGameController.m +++ src/hid/OHEvdevGameController.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHEvdevGameControllerProfile.h ================================================================== --- src/hid/OHEvdevGameControllerProfile.h +++ src/hid/OHEvdevGameControllerProfile.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -35,10 +35,9 @@ - (instancetype)oh_initWithKeyBits: (unsigned long *)keyBits evBits: (unsigned long *)evBits absBits: (unsigned long *)absBits vendorID: (uint16_t)vendorID - productID: (uint16_t)productID - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; + productID: (uint16_t)productID OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHEvdevGameControllerProfile.m ================================================================== --- src/hid/OHEvdevGameControllerProfile.m +++ src/hid/OHEvdevGameControllerProfile.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHExtendedGamepad.h ================================================================== --- src/hid/OHExtendedGamepad.h +++ src/hid/OHExtendedGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHExtendedN64Controller.h ================================================================== --- src/hid/OHExtendedN64Controller.h +++ src/hid/OHExtendedN64Controller.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHExtendedN64Controller.m ================================================================== --- src/hid/OHExtendedN64Controller.m +++ src/hid/OHExtendedN64Controller.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameController+Private.h ================================================================== --- src/hid/OHGameController+Private.h +++ src/hid/OHGameController+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -20,9 +20,9 @@ #import "OHGameController.h" OF_ASSUME_NONNULL_BEGIN @interface OHGameController () -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHGameController.h ================================================================== --- src/hid/OHGameController.h +++ src/hid/OHGameController.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameController.m ================================================================== --- src/hid/OHGameController.m +++ src/hid/OHGameController.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerAxis+Private.h ================================================================== --- src/hid/OHGameControllerAxis+Private.h +++ src/hid/OHGameControllerAxis+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerAxis.h ================================================================== --- src/hid/OHGameControllerAxis.h +++ src/hid/OHGameControllerAxis.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerAxis.m ================================================================== --- src/hid/OHGameControllerAxis.m +++ src/hid/OHGameControllerAxis.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerButton.h ================================================================== --- src/hid/OHGameControllerButton.h +++ src/hid/OHGameControllerButton.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerButton.m ================================================================== --- src/hid/OHGameControllerButton.m +++ src/hid/OHGameControllerButton.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerDirectionalPad+Private.h ================================================================== --- src/hid/OHGameControllerDirectionalPad+Private.h +++ src/hid/OHGameControllerDirectionalPad+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerDirectionalPad.h ================================================================== --- src/hid/OHGameControllerDirectionalPad.h +++ src/hid/OHGameControllerDirectionalPad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerDirectionalPad.m ================================================================== --- src/hid/OHGameControllerDirectionalPad.m +++ src/hid/OHGameControllerDirectionalPad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerElement+Private.h ================================================================== --- src/hid/OHGameControllerElement+Private.h +++ src/hid/OHGameControllerElement+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -22,10 +22,9 @@ OF_ASSUME_NONNULL_BEGIN @interface OHGameControllerElement () + (instancetype)oh_elementWithName: (OFString *)name analog: (bool)analog; - (instancetype)oh_initWithName: (OFString *)name - analog: (bool)analog - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; + analog: (bool)analog OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHGameControllerElement.h ================================================================== --- src/hid/OHGameControllerElement.h +++ src/hid/OHGameControllerElement.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerElement.m ================================================================== --- src/hid/OHGameControllerElement.m +++ src/hid/OHGameControllerElement.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGameControllerProfile.h ================================================================== --- src/hid/OHGameControllerProfile.h +++ src/hid/OHGameControllerProfile.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHGamepad.h ================================================================== --- src/hid/OHGamepad.h +++ src/hid/OHGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHJoyConPair.h ================================================================== --- src/hid/OHJoyConPair.h +++ src/hid/OHJoyConPair.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -61,10 +61,9 @@ * @param leftJoyCon The left Joy-Con for the pair * @param rightJoyCon The right Joy-Con for the pair * @return An initialized Joy-Con pair */ - (instancetype)initWithLeftJoyCon: (OHLeftJoyCon *)leftJoyCon - rightJoyCon: (OHRightJoyCon *)rightJoyCon - OF_DESIGNATED_INITIALIZER; + rightJoyCon: (OHRightJoyCon *)rightJoyCon; @end OF_ASSUME_NONNULL_END Index: src/hid/OHJoyConPair.m ================================================================== --- src/hid/OHJoyConPair.m +++ src/hid/OHJoyConPair.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHLeftJoyCon+Private.h ================================================================== --- src/hid/OHLeftJoyCon+Private.h +++ src/hid/OHLeftJoyCon+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -27,9 +27,9 @@ @interface OHLeftJoyCon () #if defined(OF_LINUX) && defined(OF_HAVE_FILES) #endif -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHLeftJoyCon.h ================================================================== --- src/hid/OHLeftJoyCon.h +++ src/hid/OHLeftJoyCon.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHLeftJoyCon.m ================================================================== --- src/hid/OHLeftJoyCon.m +++ src/hid/OHLeftJoyCon.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHN64Controller+Private.h ================================================================== --- src/hid/OHN64Controller+Private.h +++ src/hid/OHN64Controller+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -27,9 +27,9 @@ @interface OHN64Controller () #if defined(OF_LINUX) && defined(OF_HAVE_FILES) #endif -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHN64Controller.h ================================================================== --- src/hid/OHN64Controller.h +++ src/hid/OHN64Controller.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHN64Controller.m ================================================================== --- src/hid/OHN64Controller.m +++ src/hid/OHN64Controller.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendo3DSExtendedGamepad+Private.h ================================================================== --- src/hid/OHNintendo3DSExtendedGamepad+Private.h +++ src/hid/OHNintendo3DSExtendedGamepad+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -20,9 +20,9 @@ #import "OHNintendo3DSExtendedGamepad.h" OF_ASSUME_NONNULL_BEGIN @interface OHNintendo3DSExtendedGamepad () -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHNintendo3DSExtendedGamepad.h ================================================================== --- src/hid/OHNintendo3DSExtendedGamepad.h +++ src/hid/OHNintendo3DSExtendedGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendo3DSExtendedGamepad.m ================================================================== --- src/hid/OHNintendo3DSExtendedGamepad.m +++ src/hid/OHNintendo3DSExtendedGamepad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendo3DSGameController.h ================================================================== --- src/hid/OHNintendo3DSGameController.h +++ src/hid/OHNintendo3DSGameController.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendo3DSGameController.m ================================================================== --- src/hid/OHNintendo3DSGameController.m +++ src/hid/OHNintendo3DSGameController.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendoDSGameController.h ================================================================== --- src/hid/OHNintendoDSGameController.h +++ src/hid/OHNintendoDSGameController.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendoDSGameController.m ================================================================== --- src/hid/OHNintendoDSGameController.m +++ src/hid/OHNintendoDSGameController.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendoDSGamepad+Private.h ================================================================== --- src/hid/OHNintendoDSGamepad+Private.h +++ src/hid/OHNintendoDSGamepad+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -20,9 +20,9 @@ #import "OHNintendoDSGamepad.h" OF_ASSUME_NONNULL_BEGIN @interface OHNintendoDSGamepad () -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHNintendoDSGamepad.h ================================================================== --- src/hid/OHNintendoDSGamepad.h +++ src/hid/OHNintendoDSGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendoDSGamepad.m ================================================================== --- src/hid/OHNintendoDSGamepad.m +++ src/hid/OHNintendoDSGamepad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendoSwitchExtendedGamepad+Private.h ================================================================== --- src/hid/OHNintendoSwitchExtendedGamepad+Private.h +++ src/hid/OHNintendoSwitchExtendedGamepad+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -20,9 +20,9 @@ #import "OHNintendoSwitchExtendedGamepad.h" OF_ASSUME_NONNULL_BEGIN @interface OHNintendoSwitchExtendedGamepad () -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHNintendoSwitchExtendedGamepad.h ================================================================== --- src/hid/OHNintendoSwitchExtendedGamepad.h +++ src/hid/OHNintendoSwitchExtendedGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendoSwitchExtendedGamepad.m ================================================================== --- src/hid/OHNintendoSwitchExtendedGamepad.m +++ src/hid/OHNintendoSwitchExtendedGamepad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHNintendoSwitchGameController.h ================================================================== --- src/hid/OHNintendoSwitchGameController.h +++ src/hid/OHNintendoSwitchGameController.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -32,10 +32,9 @@ PadState _pad; OHNintendoSwitchExtendedGamepad *_extendedGamepad; } - (instancetype)oh_init OF_UNAVAILABLE; -- (instancetype)oh_initWithIndex: (size_t)index - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_initWithIndex: (size_t)index OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHNintendoSwitchGameController.m ================================================================== --- src/hid/OHNintendoSwitchGameController.m +++ src/hid/OHNintendoSwitchGameController.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHRightJoyCon+Private.h ================================================================== --- src/hid/OHRightJoyCon+Private.h +++ src/hid/OHRightJoyCon+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -27,9 +27,9 @@ @interface OHRightJoyCon () #if defined(OF_LINUX) && defined(OF_HAVE_FILES) #endif -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHRightJoyCon.h ================================================================== --- src/hid/OHRightJoyCon.h +++ src/hid/OHRightJoyCon.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHRightJoyCon.m ================================================================== --- src/hid/OHRightJoyCon.m +++ src/hid/OHRightJoyCon.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHStadiaGamepad+Private.h ================================================================== --- src/hid/OHStadiaGamepad+Private.h +++ src/hid/OHStadiaGamepad+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -27,9 +27,9 @@ @interface OHStadiaGamepad () #if defined(OF_LINUX) && defined(OF_HAVE_FILES) #endif -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHStadiaGamepad.h ================================================================== --- src/hid/OHStadiaGamepad.h +++ src/hid/OHStadiaGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHStadiaGamepad.m ================================================================== --- src/hid/OHStadiaGamepad.m +++ src/hid/OHStadiaGamepad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHWiiClassicController+Private.h ================================================================== --- src/hid/OHWiiClassicController+Private.h +++ src/hid/OHWiiClassicController+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -20,9 +20,9 @@ #import "OHWiiClassicController.h" OF_ASSUME_NONNULL_BEGIN @interface OHWiiClassicController () -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHWiiClassicController.h ================================================================== --- src/hid/OHWiiClassicController.h +++ src/hid/OHWiiClassicController.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHWiiClassicController.m ================================================================== --- src/hid/OHWiiClassicController.m +++ src/hid/OHWiiClassicController.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHWiiGameController.h ================================================================== --- src/hid/OHWiiGameController.h +++ src/hid/OHWiiGameController.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -28,10 +28,9 @@ id _profile; } - (instancetype)oh_init OF_UNAVAILABLE; - (instancetype)oh_initWithIndex: (int32_t)index - type: (uint32_t)type - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; + type: (uint32_t)type OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHWiiGameController.m ================================================================== --- src/hid/OHWiiGameController.m +++ src/hid/OHWiiGameController.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHWiimote+Private.h ================================================================== --- src/hid/OHWiimote+Private.h +++ src/hid/OHWiimote+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -20,9 +20,9 @@ #import "OHWiimote.h" OF_ASSUME_NONNULL_BEGIN @interface OHWiimote () -- (instancetype)oh_init OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_init OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHWiimote.h ================================================================== --- src/hid/OHWiimote.h +++ src/hid/OHWiimote.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHWiimote.m ================================================================== --- src/hid/OHWiimote.m +++ src/hid/OHWiimote.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHWiimoteWithNunchuk.h ================================================================== --- src/hid/OHWiimoteWithNunchuk.h +++ src/hid/OHWiimoteWithNunchuk.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHWiimoteWithNunchuk.m ================================================================== --- src/hid/OHWiimoteWithNunchuk.m +++ src/hid/OHWiimoteWithNunchuk.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHXInputGameController.h ================================================================== --- src/hid/OHXInputGameController.h +++ src/hid/OHXInputGameController.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -31,10 +31,9 @@ OFNumber *_Nullable _vendorID, *_Nullable _productID; OHXboxGamepad *_extendedGamepad; } - (instancetype)oh_init OF_UNAVAILABLE; -- (instancetype)oh_initWithIndex: (DWORD)index - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; +- (instancetype)oh_initWithIndex: (DWORD)index OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHXInputGameController.m ================================================================== --- src/hid/OHXInputGameController.m +++ src/hid/OHXInputGameController.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHXboxGamepad+Private.h ================================================================== --- src/hid/OHXboxGamepad+Private.h +++ src/hid/OHXboxGamepad+Private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -21,9 +21,9 @@ OF_ASSUME_NONNULL_BEGIN @interface OHXboxGamepad () - (instancetype)oh_initWithHasGuideButton: (bool)hasGuideButton - OF_METHOD_FAMILY(init) OF_DESIGNATED_INITIALIZER; + OF_METHOD_FAMILY(init); @end OF_ASSUME_NONNULL_END Index: src/hid/OHXboxGamepad.h ================================================================== --- src/hid/OHXboxGamepad.h +++ src/hid/OHXboxGamepad.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/OHXboxGamepad.m ================================================================== --- src/hid/OHXboxGamepad.m +++ src/hid/OHXboxGamepad.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/ObjFWHID.h ================================================================== --- src/hid/ObjFWHID.h +++ src/hid/ObjFWHID.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/hid/evdev_compat.h ================================================================== --- src/hid/evdev_compat.h +++ src/hid/evdev_compat.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/libbases.m ================================================================== --- src/libbases.m +++ src/libbases.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/macros.h ================================================================== --- src/macros.h +++ src/macros.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform.h ================================================================== --- src/platform.h +++ src/platform.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/AmigaOS/OFPlainCondition.m ================================================================== --- src/platform/AmigaOS/OFPlainCondition.m +++ src/platform/AmigaOS/OFPlainCondition.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/AmigaOS/OFPlainMutex.m ================================================================== --- src/platform/AmigaOS/OFPlainMutex.m +++ src/platform/AmigaOS/OFPlainMutex.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/AmigaOS/OFPlainThread.m ================================================================== --- src/platform/AmigaOS/OFPlainThread.m +++ src/platform/AmigaOS/OFPlainThread.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/AmigaOS/OFString+PathAdditions.m ================================================================== --- src/platform/AmigaOS/OFString+PathAdditions.m +++ src/platform/AmigaOS/OFString+PathAdditions.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/AmigaOS/OFTLSKey.m ================================================================== --- src/platform/AmigaOS/OFTLSKey.m +++ src/platform/AmigaOS/OFTLSKey.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/GCC4.7/OFAtomic.h ================================================================== --- src/platform/GCC4.7/OFAtomic.h +++ src/platform/GCC4.7/OFAtomic.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/GCC4/OFAtomic.h ================================================================== --- src/platform/GCC4/OFAtomic.h +++ src/platform/GCC4/OFAtomic.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/MorphOS/OFTLSKey.m ================================================================== --- src/platform/MorphOS/OFTLSKey.m +++ src/platform/MorphOS/OFTLSKey.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/POSIX/OFPlainCondition.m ================================================================== --- src/platform/POSIX/OFPlainCondition.m +++ src/platform/POSIX/OFPlainCondition.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -49,10 +49,15 @@ OFPlainConditionTimedWait(OFPlainCondition *condition, OFPlainMutex *mutex, OFTimeInterval timeout) { struct timespec ts; + if (clock_gettime(CLOCK_REALTIME, &ts) == -1) + return errno; + + timeout += ts.tv_sec + (OFTimeInterval)ts.tv_nsec / 1000000000; + ts.tv_sec = (time_t)timeout; ts.tv_nsec = (long)((timeout - ts.tv_sec) * 1000000000); return pthread_cond_timedwait(condition, mutex, &ts); } Index: src/platform/POSIX/OFPlainMutex.m ================================================================== --- src/platform/POSIX/OFPlainMutex.m +++ src/platform/POSIX/OFPlainMutex.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/POSIX/OFPlainThread.m ================================================================== --- src/platform/POSIX/OFPlainThread.m +++ src/platform/POSIX/OFPlainThread.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/POSIX/OFString+PathAdditions.m ================================================================== --- src/platform/POSIX/OFString+PathAdditions.m +++ src/platform/POSIX/OFString+PathAdditions.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/POSIX/OFSubprocess.m ================================================================== --- src/platform/POSIX/OFSubprocess.m +++ src/platform/POSIX/OFSubprocess.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/POSIX/OFSystemInfo+NetworkInterfaces.m ================================================================== --- src/platform/POSIX/OFSystemInfo+NetworkInterfaces.m +++ src/platform/POSIX/OFSystemInfo+NetworkInterfaces.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/POSIX/OFTLSKey.m ================================================================== --- src/platform/POSIX/OFTLSKey.m +++ src/platform/POSIX/OFTLSKey.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/PowerPC/OFAtomic.h ================================================================== --- src/platform/PowerPC/OFAtomic.h +++ src/platform/PowerPC/OFAtomic.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/Windows/OFPlainCondition.m ================================================================== --- src/platform/Windows/OFPlainCondition.m +++ src/platform/Windows/OFPlainCondition.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/Windows/OFPlainMutex.m ================================================================== --- src/platform/Windows/OFPlainMutex.m +++ src/platform/Windows/OFPlainMutex.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/Windows/OFPlainThread.m ================================================================== --- src/platform/Windows/OFPlainThread.m +++ src/platform/Windows/OFPlainThread.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/Windows/OFString+PathAdditions.m ================================================================== --- src/platform/Windows/OFString+PathAdditions.m +++ src/platform/Windows/OFString+PathAdditions.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/Windows/OFSubprocess.m ================================================================== --- src/platform/Windows/OFSubprocess.m +++ src/platform/Windows/OFSubprocess.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/Windows/OFSystemInfo+NetworkInterfaces.m ================================================================== --- src/platform/Windows/OFSystemInfo+NetworkInterfaces.m +++ src/platform/Windows/OFSystemInfo+NetworkInterfaces.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/Windows/OFTLSKey.m ================================================================== --- src/platform/Windows/OFTLSKey.m +++ src/platform/Windows/OFTLSKey.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/Windows/OFWin32ConsoleStdIOStream.m ================================================================== --- src/platform/Windows/OFWin32ConsoleStdIOStream.m +++ src/platform/Windows/OFWin32ConsoleStdIOStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/libfat/OFString+PathAdditions.m ================================================================== --- src/platform/libfat/OFString+PathAdditions.m +++ src/platform/libfat/OFString+PathAdditions.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/macOS/OFAtomic.h ================================================================== --- src/platform/macOS/OFAtomic.h +++ src/platform/macOS/OFAtomic.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/platform/x86/OFAtomic.h ================================================================== --- src/platform/x86/OFAtomic.h +++ src/platform/x86/OFAtomic.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/OFOnce.m ================================================================== --- src/runtime/OFOnce.m +++ src/runtime/OFOnce.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/OFPlainMutex.m ================================================================== --- src/runtime/OFPlainMutex.m +++ src/runtime/OFPlainMutex.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/OFTLSKey.m ================================================================== --- src/runtime/OFTLSKey.m +++ src/runtime/OFTLSKey.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/ObjFWRT.h ================================================================== --- src/runtime/ObjFWRT.h +++ src/runtime/ObjFWRT.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/arc.m ================================================================== --- src/runtime/arc.m +++ src/runtime/arc.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/association.m ================================================================== --- src/runtime/association.m +++ src/runtime/association.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/autorelease.m ================================================================== --- src/runtime/autorelease.m +++ src/runtime/autorelease.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/category.m ================================================================== --- src/runtime/category.m +++ src/runtime/category.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/class.m ================================================================== --- src/runtime/class.m +++ src/runtime/class.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/dtable.m ================================================================== --- src/runtime/dtable.m +++ src/runtime/dtable.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/exception.m ================================================================== --- src/runtime/exception.m +++ src/runtime/exception.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -37,10 +37,11 @@ # include #endif #if defined(__SEH__) # define PERSONALITY gnu_objc_personality +# define CXX_PERSONALITY_STR "__gxx_personality_seh0" #elif defined(__USING_SJLJ_EXCEPTIONS__) # define PERSONALITY __gnu_objc_personality_sj0 # define CXX_PERSONALITY_STR "__gxx_personality_sj0" # define _Unwind_RaiseException _Unwind_SjLj_RaiseException # define __builtin_eh_return_data_regno(i) (i) @@ -235,11 +236,38 @@ uintptr_t thumb = _Unwind_GetGR(ctx, 15) & 1; _Unwind_SetGR(ctx, 15, (value | thumb)); } #endif -#if defined(CXX_PERSONALITY_STR) && !defined(OF_AMIGAOS_M68K) +#if defined(OF_WINDOWS) +# ifdef __SEH__ +static EXCEPTION_DISPOSITION (*cxx_personality)(PEXCEPTION_RECORD, void *, + PCONTEXT, PDISPATCHER_CONTEXT); +# else +static PERSONALITY_FUNC((*cxx_personality)); +# endif + +OF_CONSTRUCTOR() +{ + /* + * This only works if the application uses libc++.dll or + * libstdc++-6.dll. There is unfortunately no other way, as Windows + * does not support proper weak linking. + */ + + HMODULE module; + + module = GetModuleHandle("libc++"); + + if (module == NULL) + module = GetModuleHandle("libstdc++-6"); + + if (module != NULL) + cxx_personality = (__typeof__(cxx_personality)) + GetProcAddress(module, CXX_PERSONALITY_STR); +} +#elif !defined(OF_AMIGAOS_M68K) static PERSONALITY_FUNC(cxx_personality) OF_WEAK_REF(CXX_PERSONALITY_STR); #endif #ifdef __SEH__ extern EXCEPTION_DISPOSITION _GCC_specific_handler(PEXCEPTION_RECORD, void *, @@ -613,11 +641,11 @@ uint8_t found = 0; intptr_t filter = 0; if (foreign) { switch (exClass) { -#if defined(CXX_PERSONALITY_STR) && !defined(OF_AMIGAOS_M68K) +#if !defined(__SEH__) && !defined(OF_AMIGAOS_M68K) case GNUCCXX0_EXCEPTION_CLASS: case CLNGCXX0_EXCEPTION_CLASS: if (cxx_personality != NULL) return CALL_PERSONALITY(cxx_personality); break; @@ -783,30 +811,10 @@ return old; } #ifdef __SEH__ -typedef EXCEPTION_DISPOSITION (*seh_personality_fn)(PEXCEPTION_RECORD, void *, - PCONTEXT, PDISPATCHER_CONTEXT); -static seh_personality_fn __gxx_personality_seh0; - -OF_CONSTRUCTOR() -{ - /* - * This only works if the application uses libstdc++-6.dll. - * There is unfortunately no other way, as Windows does not support - * proper weak linking. - */ - - HMODULE module; - if ((module = GetModuleHandle("libstdc++-6")) == NULL) - return; - - __gxx_personality_seh0 = (seh_personality_fn) - GetProcAddress(module, "__gxx_personality_seh0"); -} - EXCEPTION_DISPOSITION __gnu_objc_personality_seh0(PEXCEPTION_RECORD ms_exc, void *this_frame, PCONTEXT ms_orig_context, PDISPATCHER_CONTEXT ms_disp) { struct _Unwind_Exception *ex = @@ -813,14 +821,14 @@ (struct _Unwind_Exception *)ms_exc->ExceptionInformation[0]; switch (ex->class) { case GNUCCXX0_EXCEPTION_CLASS: case CLNGCXX0_EXCEPTION_CLASS: - if (__gxx_personality_seh0 != NULL) - return __gxx_personality_seh0(ms_exc, this_frame, + if (cxx_personality != NULL) + return cxx_personality(ms_exc, this_frame, ms_orig_context, ms_disp); } return _GCC_specific_handler(ms_exc, this_frame, ms_orig_context, ms_disp, PERSONALITY); } #endif Index: src/runtime/hashtable.m ================================================================== --- src/runtime/hashtable.m +++ src/runtime/hashtable.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/init.m ================================================================== --- src/runtime/init.m +++ src/runtime/init.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/instance.m ================================================================== --- src/runtime/instance.m +++ src/runtime/instance.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/ivar.m ================================================================== --- src/runtime/ivar.m +++ src/runtime/ivar.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-amd64-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-amd64-elf.S +++ src/runtime/lookup-asm/lookup-asm-amd64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-amd64-macho.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-amd64-macho.S +++ src/runtime/lookup-asm/lookup-asm-amd64-macho.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-amd64-win64.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-amd64-win64.S +++ src/runtime/lookup-asm/lookup-asm-amd64-win64.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-arm-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-arm-elf.S +++ src/runtime/lookup-asm/lookup-asm-arm-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-arm64-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-arm64-elf.S +++ src/runtime/lookup-asm/lookup-asm-arm64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-arm64-win64.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-arm64-win64.S +++ src/runtime/lookup-asm/lookup-asm-arm64-win64.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-loongarch64-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-loongarch64-elf.S +++ src/runtime/lookup-asm/lookup-asm-loongarch64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-mips-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-mips-elf.S +++ src/runtime/lookup-asm/lookup-asm-mips-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-mips64-n64-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-mips64-n64-elf.S +++ src/runtime/lookup-asm/lookup-asm-mips64-n64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-powerpc-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-powerpc-elf.S +++ src/runtime/lookup-asm/lookup-asm-powerpc-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-powerpc64-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-powerpc64-elf.S +++ src/runtime/lookup-asm/lookup-asm-powerpc64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-riscv64-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-riscv64-elf.S +++ src/runtime/lookup-asm/lookup-asm-riscv64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-sparc-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-sparc-elf.S +++ src/runtime/lookup-asm/lookup-asm-sparc-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-sparc64-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-sparc64-elf.S +++ src/runtime/lookup-asm/lookup-asm-sparc64-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-x86-elf.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-x86-elf.S +++ src/runtime/lookup-asm/lookup-asm-x86-elf.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm-x86-win32.S ================================================================== --- src/runtime/lookup-asm/lookup-asm-x86-win32.S +++ src/runtime/lookup-asm/lookup-asm-x86-win32.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup-asm/lookup-asm.S ================================================================== --- src/runtime/lookup-asm/lookup-asm.S +++ src/runtime/lookup-asm/lookup-asm.S @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/lookup.m ================================================================== --- src/runtime/lookup.m +++ src/runtime/lookup.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/method.m ================================================================== --- src/runtime/method.m +++ src/runtime/method.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/misc.m ================================================================== --- src/runtime/misc.m +++ src/runtime/misc.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/private.h ================================================================== --- src/runtime/private.h +++ src/runtime/private.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/property.m ================================================================== --- src/runtime/property.m +++ src/runtime/property.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/protocol.m ================================================================== --- src/runtime/protocol.m +++ src/runtime/protocol.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/selector.m ================================================================== --- src/runtime/selector.m +++ src/runtime/selector.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/sparsearray.m ================================================================== --- src/runtime/sparsearray.m +++ src/runtime/sparsearray.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/static-instances.m ================================================================== --- src/runtime/static-instances.m +++ src/runtime/static-instances.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/synchronized.m ================================================================== --- src/runtime/synchronized.m +++ src/runtime/synchronized.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/tagged-pointer.m ================================================================== --- src/runtime/tagged-pointer.m +++ src/runtime/tagged-pointer.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/threading.m ================================================================== --- src/runtime/threading.m +++ src/runtime/threading.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/runtime/versioninfo.rc ================================================================== --- src/runtime/versioninfo.rc +++ src/runtime/versioninfo.rc @@ -12,11 +12,11 @@ VALUE "ProductName", "ObjFW Runtime" VALUE "ProductVersion", PACKAGE_VERSION VALUE "FileVersion", OBJFWRT_LIB_VERSION VALUE "FileDescription", "Objective-C runtime" VALUE "LegalCopyright", - "(c) 2008-2024 Jonathan Schleifer" + "(c) 2008-2025 Jonathan Schleifer" VALUE "InternalName", "ObjFWRT" VALUE "OriginalFilename", OBJFWRT_SHARED_LIB } } Index: src/test/OTAppDelegate.m ================================================================== --- src/test/OTAppDelegate.m +++ src/test/OTAppDelegate.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTAssert.h ================================================================== --- src/test/OTAssert.h +++ src/test/OTAssert.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTAssert.m ================================================================== --- src/test/OTAssert.m +++ src/test/OTAssert.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTAssertionFailedException.h ================================================================== --- src/test/OTAssertionFailedException.h +++ src/test/OTAssertionFailedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTAssertionFailedException.m ================================================================== --- src/test/OTAssertionFailedException.m +++ src/test/OTAssertionFailedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTOrderedDictionary.h ================================================================== --- src/test/OTOrderedDictionary.h +++ src/test/OTOrderedDictionary.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTOrderedDictionary.m ================================================================== --- src/test/OTOrderedDictionary.m +++ src/test/OTOrderedDictionary.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTTestCase.h ================================================================== --- src/test/OTTestCase.h +++ src/test/OTTestCase.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTTestCase.m ================================================================== --- src/test/OTTestCase.m +++ src/test/OTTestCase.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTTestSkippedException.h ================================================================== --- src/test/OTTestSkippedException.h +++ src/test/OTTestSkippedException.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/OTTestSkippedException.m ================================================================== --- src/test/OTTestSkippedException.m +++ src/test/OTTestSkippedException.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/test/ObjFWTest.h ================================================================== --- src/test/ObjFWTest.h +++ src/test/ObjFWTest.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/tls/OFGnuTLSTLSStream.h ================================================================== --- src/tls/OFGnuTLSTLSStream.h +++ src/tls/OFGnuTLSTLSStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/tls/OFGnuTLSTLSStream.m ================================================================== --- src/tls/OFGnuTLSTLSStream.m +++ src/tls/OFGnuTLSTLSStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/tls/OFMbedTLSTLSStream.h ================================================================== --- src/tls/OFMbedTLSTLSStream.h +++ src/tls/OFMbedTLSTLSStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/tls/OFMbedTLSTLSStream.m ================================================================== --- src/tls/OFMbedTLSTLSStream.m +++ src/tls/OFMbedTLSTLSStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -115,10 +115,11 @@ self = [super initWithStream: stream]; @try { _underlyingStream.delegate = self; + mbedtls_ssl_config_init(&_config); mbedtls_x509_crt_init(&_CAChain); } @catch (id e) { [self release]; @throw e; } @@ -131,10 +132,11 @@ if (_initialized) [self close]; [_host release]; + mbedtls_ssl_config_free(&_config); mbedtls_x509_crt_free(&_CAChain); [super dealloc]; } @@ -145,11 +147,10 @@ if (_handshakeDone) mbedtls_ssl_close_notify(&_SSL); mbedtls_ssl_free(&_SSL); - mbedtls_ssl_config_free(&_config); _initialized = _handshakeDone = false; [_host release]; _host = nil; @@ -251,10 +252,12 @@ } mbedtls_ssl_conf_ca_chain(&_config, &_CAChain, NULL); mbedtls_ssl_init(&_SSL); + _initialized = true; + if (mbedtls_ssl_setup(&_SSL, &_config) != 0) @throw [OFTLSHandshakeFailedException exceptionWithStream: self host: host errorCode: initFailedErrorCode]; Index: src/tls/OFOpenSSLTLSStream.h ================================================================== --- src/tls/OFOpenSSLTLSStream.h +++ src/tls/OFOpenSSLTLSStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/tls/OFOpenSSLTLSStream.m ================================================================== --- src/tls/OFOpenSSLTLSStream.m +++ src/tls/OFOpenSSLTLSStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -90,12 +90,22 @@ - (void)close { if (_SSL == NULL) @throw [OFNotOpenException exceptionWithObject: self]; - if (_handshakeDone) + if (_handshakeDone) { SSL_shutdown(_SSL); + + while (BIO_ctrl_pending(_writeBIO) > 0) { + int tmp = BIO_read(_writeBIO, _buffer, bufferSize); + + OFEnsure(tmp >= 0); + + [_underlyingStream writeBuffer: _buffer length: tmp]; + [_underlyingStream flushWriteBuffer]; + } + } SSL_free(_SSL); _SSL = NULL; _handshakeDone = false; @@ -286,16 +296,25 @@ if (status == 1) _handshakeDone = true; else { switch (SSL_get_error(_SSL, status)) { case SSL_ERROR_WANT_READ: - [_underlyingStream asyncReadIntoBuffer: _buffer - length: bufferSize - runLoopMode: runLoopMode]; - [_delegate retain]; - objc_autoreleasePoolPop(pool); - return; + if (!_underlyingStream.atEndOfStream) { + [_underlyingStream + asyncReadIntoBuffer: _buffer + length: bufferSize + runLoopMode: runLoopMode]; + [_delegate retain]; + objc_autoreleasePoolPop(pool); + return; + } + + exception = [OFTLSHandshakeFailedException + exceptionWithStream: self + host: host + errorCode: OFTLSStreamErrorCodeUnknown]; + break; case SSL_ERROR_WANT_WRITE: [_underlyingStream asyncWriteData: [OFData data] runLoopMode: runLoopMode]; [_delegate retain]; objc_autoreleasePoolPop(pool); @@ -347,11 +366,18 @@ if (status == 1) _handshakeDone = true; else { switch (SSL_get_error(_SSL, status)) { case SSL_ERROR_WANT_READ: - return true; + if (!_underlyingStream.atEndOfStream) + return true; + + exception = [OFTLSHandshakeFailedException + exceptionWithStream: self + host: _host + errorCode: unknownErrorCode]; + break; case SSL_ERROR_WANT_WRITE:; OFRunLoopMode runLoopMode = [OFRunLoop currentRunLoop].currentMode; [_underlyingStream asyncWriteData: [OFData data] runLoopMode: runLoopMode]; Index: src/tls/OFSecureTransportTLSStream.h ================================================================== --- src/tls/OFSecureTransportTLSStream.h +++ src/tls/OFSecureTransportTLSStream.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/tls/OFSecureTransportTLSStream.m ================================================================== --- src/tls/OFSecureTransportTLSStream.m +++ src/tls/OFSecureTransportTLSStream.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -32,25 +32,29 @@ int _ObjFWTLS_reference; static OSStatus readFunc(SSLConnectionRef connection, void *data, size_t *dataLength) { + OFStream *underlyingStream = + ((OFTLSStream *)connection).underlyingStream; bool incomplete; size_t length; @try { - length = [((OFTLSStream *)connection).underlyingStream - readIntoBuffer: data - length: *dataLength]; + length = [underlyingStream readIntoBuffer: data + length: *dataLength]; } @catch (OFReadFailedException *e) { if (e.errNo == EWOULDBLOCK || e.errNo == EAGAIN) { *dataLength = 0; return errSSLWouldBlock; } @throw e; } + + if (length == 0 && underlyingStream.atEndOfStream) + return errSSLClosedAbort; incomplete = (length < *dataLength); *dataLength = length; return (incomplete ? errSSLWouldBlock : noErr); Index: src/tls/ObjFWTLS.h ================================================================== --- src/tls/ObjFWTLS.h +++ src/tls/ObjFWTLS.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -15,14 +15,22 @@ * You should have received a copy of the GNU Lesser General Public License * version 3.0 along with this program. If not, see * . */ -#import "macros.h" +#ifdef OBJFWTLS_LOCAL_INCLUDES +# import "macros.h" +#else +# if defined(__has_feature) && __has_feature(modules) +@import ObjFW; +# else +# import +# endif +#endif #ifdef __cplusplus extern "C" { #endif extern int _ObjFWTLS_reference; #ifdef __cplusplus } #endif Index: src/unicode.h ================================================================== --- src/unicode.h +++ src/unicode.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/unicode.m ================================================================== --- src/unicode.m +++ src/unicode.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/unistd_wrapper.h ================================================================== --- src/unistd_wrapper.h +++ src/unistd_wrapper.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: src/versioninfo.rc ================================================================== --- src/versioninfo.rc +++ src/versioninfo.rc @@ -12,11 +12,11 @@ VALUE "ProductName", "ObjFW" VALUE "ProductVersion", PACKAGE_VERSION VALUE "FileVersion", OBJFW_LIB_VERSION VALUE "FileDescription", "Objective-C framework" VALUE "LegalCopyright", - "(c) 2008-2024 Jonathan Schleifer" + "(c) 2008-2025 Jonathan Schleifer" VALUE "InternalName", "ObjFW" VALUE "OriginalFilename", OBJFW_SHARED_LIB } } Index: tests/ForwardingTests.m ================================================================== --- tests/ForwardingTests.m +++ tests/ForwardingTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/ImportTest.m ================================================================== --- tests/ImportTest.m +++ tests/ImportTest.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/Makefile ================================================================== --- tests/Makefile +++ tests/Makefile @@ -246,11 +246,11 @@ ${PROG_NOINST}.nds: ${PROG_NOINST}.arm9 testfile.txt rm -fr nds-data mkdir -p nds-data cp testfile.txt nds-data - ndstool -c $@ -9 ${PROG_NOINST} -d nds-data + ndstool -c $@ -7 ${DEVKITPRO}/calico/bin/ds7_maine.elf -9 ${PROG_NOINST} -d nds-data rm -fr nds-data ${PROG_NOINST}.nro: ${PROG_NOINST} testfile.txt rm -fr romfs mkdir -p romfs Index: tests/OFArrayTests.h ================================================================== --- tests/OFArrayTests.h +++ tests/OFArrayTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFArrayTests.m ================================================================== --- tests/OFArrayTests.m +++ tests/OFArrayTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFBlockTests.m ================================================================== --- tests/OFBlockTests.m +++ tests/OFBlockTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFCharacterSetTests.m ================================================================== --- tests/OFCharacterSetTests.m +++ tests/OFCharacterSetTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFColorTests.m ================================================================== --- tests/OFColorTests.m +++ tests/OFColorTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFConcreteArrayTests.m ================================================================== --- tests/OFConcreteArrayTests.m +++ tests/OFConcreteArrayTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFConcreteDictionaryTests.m ================================================================== --- tests/OFConcreteDictionaryTests.m +++ tests/OFConcreteDictionaryTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFConcreteMutableArrayTests.m ================================================================== --- tests/OFConcreteMutableArrayTests.m +++ tests/OFConcreteMutableArrayTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFConcreteMutableDictionaryTests.m ================================================================== --- tests/OFConcreteMutableDictionaryTests.m +++ tests/OFConcreteMutableDictionaryTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFConcreteMutableSetTests.m ================================================================== --- tests/OFConcreteMutableSetTests.m +++ tests/OFConcreteMutableSetTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFConcreteSetTests.m ================================================================== --- tests/OFConcreteSetTests.m +++ tests/OFConcreteSetTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFCryptographicHashTests.m ================================================================== --- tests/OFCryptographicHashTests.m +++ tests/OFCryptographicHashTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFDDPSocketTests.m ================================================================== --- tests/OFDDPSocketTests.m +++ tests/OFDDPSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFDNSResolverTests.m ================================================================== --- tests/OFDNSResolverTests.m +++ tests/OFDNSResolverTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFDataTests.h ================================================================== --- tests/OFDataTests.h +++ tests/OFDataTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFDataTests.m ================================================================== --- tests/OFDataTests.m +++ tests/OFDataTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFDateTests.m ================================================================== --- tests/OFDateTests.m +++ tests/OFDateTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFDictionaryTests.h ================================================================== --- tests/OFDictionaryTests.h +++ tests/OFDictionaryTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFDictionaryTests.m ================================================================== --- tests/OFDictionaryTests.m +++ tests/OFDictionaryTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFFileManagerTests.m ================================================================== --- tests/OFFileManagerTests.m +++ tests/OFFileManagerTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -21,10 +21,14 @@ #include #import "ObjFW.h" #import "ObjFWTest.h" + +#ifdef OF_HAIKU +# include +#endif @interface OFFileManagerTests: OTTestCase { OFFileManager *_fileManager; OFIRI *_testsDirectoryIRI, *_testFileIRI; @@ -33,12 +37,15 @@ @implementation OFFileManagerTests - (void)setUp { _fileManager = [[OFFileManager defaultManager] retain]; + _testsDirectoryIRI = [[[OFSystemInfo temporaryDirectoryIRI] IRIByAppendingPathComponent: @"objfw-tests"] retain]; + OTAssertNotNil(_testsDirectoryIRI); + _testFileIRI = [[_testsDirectoryIRI IRIByAppendingPathComponent: @"test.txt"] retain]; /* In case a previous test run failed and left things. */ if ([_fileManager directoryExistsAtIRI: _testsDirectoryIRI]) @@ -48,11 +55,12 @@ [@"test" writeToIRI: _testFileIRI]; } - (void)tearDown { - [_fileManager removeItemAtIRI: _testsDirectoryIRI]; + if (_testsDirectoryIRI != nil) + [_fileManager removeItemAtIRI: _testsDirectoryIRI]; } - (void)dealloc { [_fileManager release]; @@ -88,12 +96,20 @@ OFFileAttributes attributes; attributes = [OFDictionary dictionaryWithObject: date forKey: OFFileModificationDate]; - [_fileManager setAttributes: attributes - ofItemAtPath: _testFileIRI.fileSystemRepresentation]; + @try { + [_fileManager + setAttributes: attributes + ofItemAtPath: _testFileIRI.fileSystemRepresentation]; + } @catch (OFSetItemAttributesFailedException *e) { + if (e.errNo == ENOSYS) + OTSkip(@"Setting modification time not supported"); + + @throw e; + } attributes = [_fileManager attributesOfItemAtPath: _testFileIRI.fileSystemRepresentation]; OTAssertEqual(attributes.fileType, OFFileTypeRegular); OTAssertEqual(attributes.fileSize, 4); Index: tests/OFHMACTests.m ================================================================== --- tests/OFHMACTests.m +++ tests/OFHMACTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFHTTPClientTests.m ================================================================== --- tests/OFHTTPClientTests.m +++ tests/OFHTTPClientTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFHTTPCookieManagerTests.m ================================================================== --- tests/OFHTTPCookieManagerTests.m +++ tests/OFHTTPCookieManagerTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFHTTPCookieTests.m ================================================================== --- tests/OFHTTPCookieTests.m +++ tests/OFHTTPCookieTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFINIFileTests.m ================================================================== --- tests/OFINIFileTests.m +++ tests/OFINIFileTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -117,10 +117,11 @@ @"[tests]\r\n" @"foo=baz\r\n" @"foobar=baz\r\n" @";comment\r\n" @"new=new\r\n" + @"\"#quoted\"=\";comment\"\r\n" @"\r\n" @"[foobar]\r\n" @"#foobarcomment\r\n" @"qux=\" asd\"\r\n" @"quxquxqux=\"hello\\\"wörld\"\r\n" @@ -143,10 +144,11 @@ OFIRI *writeIRI; #endif [tests setStringValue: @"baz" forKey: @"foo"]; [tests setStringValue: @"new" forKey: @"new"]; + [tests setStringValue: @";comment" forKey: @"#quoted"]; [foobar setStringValue: @"a\fb" forKey: @"qux3"]; [types setLongLongValue: 0x10 forKey: @"integer"]; [types setBoolValue: false forKey: @"bool"]; [types setFloatValue: 0.25f forKey: @"float"]; [types setDoubleValue: 0.75 forKey: @"double"]; Index: tests/OFIPXSocketTests.m ================================================================== --- tests/OFIPXSocketTests.m +++ tests/OFIPXSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFIRITests.m ================================================================== --- tests/OFIRITests.m +++ tests/OFIRITests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFInvocationTests.m ================================================================== --- tests/OFInvocationTests.m +++ tests/OFInvocationTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFJSONTests.m ================================================================== --- tests/OFJSONTests.m +++ tests/OFJSONTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFKernelEventObserverTests.m ================================================================== --- tests/OFKernelEventObserverTests.m +++ tests/OFKernelEventObserverTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFLHAArchiveTests.m ================================================================== --- tests/OFLHAArchiveTests.m +++ tests/OFLHAArchiveTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFListTests.m ================================================================== --- tests/OFListTests.m +++ tests/OFListTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFLocaleTests.m ================================================================== --- tests/OFLocaleTests.m +++ tests/OFLocaleTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMatrix4x4Tests.m ================================================================== --- tests/OFMatrix4x4Tests.m +++ tests/OFMatrix4x4Tests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMemoryStreamTests.m ================================================================== --- tests/OFMemoryStreamTests.m +++ tests/OFMemoryStreamTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMessagePackTests.m ================================================================== --- tests/OFMessagePackTests.m +++ tests/OFMessagePackTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMethodSignatureTests.m ================================================================== --- tests/OFMethodSignatureTests.m +++ tests/OFMethodSignatureTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableArrayTests.h ================================================================== --- tests/OFMutableArrayTests.h +++ tests/OFMutableArrayTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableArrayTests.m ================================================================== --- tests/OFMutableArrayTests.m +++ tests/OFMutableArrayTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableDataTests.m ================================================================== --- tests/OFMutableDataTests.m +++ tests/OFMutableDataTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableDictionaryTests.h ================================================================== --- tests/OFMutableDictionaryTests.h +++ tests/OFMutableDictionaryTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableDictionaryTests.m ================================================================== --- tests/OFMutableDictionaryTests.m +++ tests/OFMutableDictionaryTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableSetTests.h ================================================================== --- tests/OFMutableSetTests.h +++ tests/OFMutableSetTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableSetTests.m ================================================================== --- tests/OFMutableSetTests.m +++ tests/OFMutableSetTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableStringTests.h ================================================================== --- tests/OFMutableStringTests.h +++ tests/OFMutableStringTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableStringTests.m ================================================================== --- tests/OFMutableStringTests.m +++ tests/OFMutableStringTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFMutableUTF8StringTests.m ================================================================== --- tests/OFMutableUTF8StringTests.m +++ tests/OFMutableUTF8StringTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFNotificationCenterTests.m ================================================================== --- tests/OFNotificationCenterTests.m +++ tests/OFNotificationCenterTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFNumberTests.m ================================================================== --- tests/OFNumberTests.m +++ tests/OFNumberTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFObjectTests.m ================================================================== --- tests/OFObjectTests.m +++ tests/OFObjectTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFPBKDF2Tests.m ================================================================== --- tests/OFPBKDF2Tests.m +++ tests/OFPBKDF2Tests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFPluginTests.m ================================================================== --- tests/OFPluginTests.m +++ tests/OFPluginTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFPropertyListTests.m ================================================================== --- tests/OFPropertyListTests.m +++ tests/OFPropertyListTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFSCTPSocketTests.m ================================================================== --- tests/OFSCTPSocketTests.m +++ tests/OFSCTPSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFSPXSocketTests.m ================================================================== --- tests/OFSPXSocketTests.m +++ tests/OFSPXSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFSPXStreamSocketTests.m ================================================================== --- tests/OFSPXStreamSocketTests.m +++ tests/OFSPXStreamSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFScryptTests.m ================================================================== --- tests/OFScryptTests.m +++ tests/OFScryptTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFSetTests.h ================================================================== --- tests/OFSetTests.h +++ tests/OFSetTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFSetTests.m ================================================================== --- tests/OFSetTests.m +++ tests/OFSetTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFSocketTests.m ================================================================== --- tests/OFSocketTests.m +++ tests/OFSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFStreamTests.m ================================================================== --- tests/OFStreamTests.m +++ tests/OFStreamTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFStringTests.h ================================================================== --- tests/OFStringTests.h +++ tests/OFStringTests.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFStringTests.m ================================================================== --- tests/OFStringTests.m +++ tests/OFStringTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -747,10 +747,14 @@ OTAssertEqual([[self.stringClass stringWithString: @"765\t"] longLongValueWithBase: 8], 0765); OTAssertEqual([[self.stringClass stringWithString: @"\t\t\r\n"] longLongValueWithBase: 8], 0); + + OTAssertEqual([[self.stringClass stringWithString: + ([OFString stringWithFormat: @"%lld", LLONG_MIN])] longLongValue], + LLONG_MIN); } - (void)testLongLongValueThrowsOnInvalidFormat { OTAssertThrowsSpecific( @@ -1387,12 +1391,12 @@ @"foo//"] pathComponents], ([OFArray arrayWithObjects: @"foo", @"/", nil])); OTAssertEqualObjects([[self.stringClass stringWithString: @""] pathComponents], [OFArray array]); -# elif defined(OF_NINTENDO_3DS) || defined(OF_WII) || \ - defined(OF_NINTENDO_SWITCH) +# elif defined(OF_NINTENDO_DS) || defined(OF_NINTENDO_3DS) || \ + defined(OF_WII) || defined(OF_NINTENDO_SWITCH) OTAssertEqualObjects([[self.stringClass stringWithString: @"sdmc:/tmp"] pathComponents], ([OFArray arrayWithObjects: @"sdmc:", @"tmp", nil])); OTAssertEqualObjects([[self.stringClass stringWithString: @@ -1563,12 +1567,12 @@ @"dh0:tmp/foo/"] stringByDeletingLastPathComponent], @"dh0:tmp"); OTAssertEqualObjects([[self.stringClass stringWithString: @"foo/bar"] stringByDeletingLastPathComponent], @"foo"); OTAssertEqualObjects([[self.stringClass stringWithString: @"foo"] stringByDeletingLastPathComponent], @""); -# elif defined(OF_NINTENDO_3DS) || defined(OF_WII) || \ - defined(OF_NINTENDO_SWITCH) +# elif defined(OF_NINTENDO_DS) || defined(OF_NINTENDO_3DS) || \ + defined(OF_WII) || defined(OF_NINTENDO_SWITCH) OTAssertEqualObjects([[self.stringClass stringWithString: @"/tmp/"] stringByDeletingLastPathComponent], @""); OTAssertEqualObjects([[self.stringClass stringWithString: @"sdmc:/tmp/foo/"] stringByDeletingLastPathComponent], @"sdmc:/tmp"); Index: tests/OFSubprocessTests.m ================================================================== --- tests/OFSubprocessTests.m +++ tests/OFSubprocessTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFSystemInfoTests.m ================================================================== --- tests/OFSystemInfoTests.m +++ tests/OFSystemInfoTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFTCPSocketTests.m ================================================================== --- tests/OFTCPSocketTests.m +++ tests/OFTCPSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFTarArchiveTests.m ================================================================== --- tests/OFTarArchiveTests.m +++ tests/OFTarArchiveTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFThreadTests.m ================================================================== --- tests/OFThreadTests.m +++ tests/OFThreadTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFUDPSocketTests.m ================================================================== --- tests/OFUDPSocketTests.m +++ tests/OFUDPSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFUNIXDatagramSocketTests.m ================================================================== --- tests/OFUNIXDatagramSocketTests.m +++ tests/OFUNIXDatagramSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -38,10 +38,11 @@ #if defined(OF_HAVE_FILES) && !defined(OF_IOS) path = [[OFSystemInfo temporaryDirectoryIRI] IRIByAppendingPathComponent: [[OFUUID UUID] UUIDString]] .fileSystemRepresentation; + OTAssertNotNil(path); #else /* * We can have sockets, including UNIX sockets, while file support is * disabled. * Index: tests/OFUNIXSequencedPacketSocketTests.m ================================================================== --- tests/OFUNIXSequencedPacketSocketTests.m +++ tests/OFUNIXSequencedPacketSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -37,10 +37,11 @@ #if defined(OF_HAVE_FILES) && !defined(OF_IOS) path = [[OFSystemInfo temporaryDirectoryIRI] IRIByAppendingPathComponent: [[OFUUID UUID] UUIDString]] .fileSystemRepresentation; + OTAssertNotNil(path); #else /* * We can have sockets, including UNIX sockets, while file support is * disabled. * Index: tests/OFUNIXStreamSocketTests.m ================================================================== --- tests/OFUNIXStreamSocketTests.m +++ tests/OFUNIXStreamSocketTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -37,10 +37,11 @@ #if defined(OF_HAVE_FILES) && !defined(OF_IOS) path = [[OFSystemInfo temporaryDirectoryIRI] IRIByAppendingPathComponent: [[OFUUID UUID] UUIDString]] .fileSystemRepresentation; + OTAssertNotNil(path); #else /* * We can have sockets, including UNIX sockets, while file support is * disabled. * Index: tests/OFUTF8StringTests.m ================================================================== --- tests/OFUTF8StringTests.m +++ tests/OFUTF8StringTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFValueTests.m ================================================================== --- tests/OFValueTests.m +++ tests/OFValueTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFWindowsRegistryKeyTests.m ================================================================== --- tests/OFWindowsRegistryKeyTests.m +++ tests/OFWindowsRegistryKeyTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFXMLElementBuilderTests.m ================================================================== --- tests/OFXMLElementBuilderTests.m +++ tests/OFXMLElementBuilderTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFXMLNodeTests.m ================================================================== --- tests/OFXMLNodeTests.m +++ tests/OFXMLNodeTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFXMLParserTests.m ================================================================== --- tests/OFXMLParserTests.m +++ tests/OFXMLParserTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFZIPArchiveTests.m ================================================================== --- tests/OFZIPArchiveTests.m +++ tests/OFZIPArchiveTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/OFZooArchiveTests.m ================================================================== --- tests/OFZooArchiveTests.m +++ tests/OFZooArchiveTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/RuntimeARCTests.m ================================================================== --- tests/RuntimeARCTests.m +++ tests/RuntimeARCTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/RuntimeTests.m ================================================================== --- tests/RuntimeTests.m +++ tests/RuntimeTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/gamecontroller/GameControllerTests.m ================================================================== --- tests/gamecontroller/GameControllerTests.m +++ tests/gamecontroller/GameControllerTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/gamecontroller/Makefile ================================================================== --- tests/gamecontroller/Makefile +++ tests/gamecontroller/Makefile @@ -107,11 +107,11 @@ ${PROG_NOINST}.arm9: ${PROG_NOINST} arm-none-eabi-objcopy -O binary $< $@ ${PROG_NOINST}.nds: ${PROG_NOINST}.arm9 - ndstool -c $@ -9 ${PROG_NOINST} + ndstool -c $@ -7 ${DEVKITPRO}/calico/bin/ds7_maine.elf -9 ${PROG_NOINST} ${PROG_NOINST}.nro: ${PROG_NOINST} elf2nro ${PROG_NOINST} $@ CPPFLAGS += -I../../src \ Index: tests/objc_sync/test.m ================================================================== --- tests/objc_sync/test.m +++ tests/objc_sync/test.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/plugin/TestPlugin.h ================================================================== --- tests/plugin/TestPlugin.h +++ tests/plugin/TestPlugin.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/plugin/TestPlugin.m ================================================================== --- tests/plugin/TestPlugin.m +++ tests/plugin/TestPlugin.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/subprocess/Subprocess.m ================================================================== --- tests/subprocess/Subprocess.m +++ tests/subprocess/Subprocess.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: tests/terminal/TerminalTests.m ================================================================== --- tests/terminal/TerminalTests.m +++ tests/terminal/TerminalTests.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-compile ================================================================== --- utils/objfw-compile +++ utils/objfw-compile @@ -1,8 +1,8 @@ #!/bin/sh # -# Copyright (c) 2008-2024 Jonathan Schleifer +# Copyright (c) 2008-2025 Jonathan Schleifer # # All rights reserved. # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-compile.1 ================================================================== --- utils/objfw-compile.1 +++ utils/objfw-compile.1 @@ -1,7 +1,7 @@ .\" -.\" Copyright (c) 2008-2024 Jonathan Schleifer +.\" Copyright (c) 2008-2025 Jonathan Schleifer .\" .\" All rights reserved. .\" .\" This program is free software: you can redistribute it and/or modify it .\" under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-config.1 ================================================================== --- utils/objfw-config.1 +++ utils/objfw-config.1 @@ -1,7 +1,7 @@ .\" -.\" Copyright (c) 2008-2024 Jonathan Schleifer +.\" Copyright (c) 2008-2025 Jonathan Schleifer .\" .\" All rights reserved. .\" .\" This program is free software: you can redistribute it and/or modify it .\" under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-config.in ================================================================== --- utils/objfw-config.in +++ utils/objfw-config.in @@ -1,8 +1,8 @@ #!/bin/sh # -# Copyright (c) 2008-2024 Jonathan Schleifer +# Copyright (c) 2008-2025 Jonathan Schleifer # # All rights reserved. # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License version 3.0 only, @@ -39,11 +39,11 @@ FRAMEWORK_LIBS="$FRAMEWORK_LIBS @RUNTIME_FRAMEWORK_LIBS@ @OBJFW_LIBS@" PLUGIN_CFLAGS="@PLUGIN_CFLAGS@" PLUGIN_LDFLAGS="@PLUGIN_LDFLAGS@" PLUGIN_SUFFIX="@PLUGIN_SUFFIX@" PROG_SUFFIX="@EXEEXT@" -STATIC_LIBS="${libdir}/libobjfw.a @OBJFW_LIBS@" +STATIC_LIBS="${libdir}/libobjfw.a @RUNTIME_STATIC_LIBS@ @OBJFW_LIBS@" VERSION="@PACKAGE_VERSION@" show_help() { cat >&2 <<__EOF__ objfw-config: Available arguments are: Index: utils/objfw-embed ================================================================== --- utils/objfw-embed +++ utils/objfw-embed @@ -1,8 +1,8 @@ #!/bin/sh # -# Copyright (c) 2008-2024 Jonathan Schleifer +# Copyright (c) 2008-2025 Jonathan Schleifer # # All rights reserved. # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License version 3.0 only, @@ -30,11 +30,15 @@ #include #ifdef OF_COMPILING_OBJFW # import "OFEmbeddedIRIHandler.h" #else -# import +# if defined(__has_feature) && __has_feature(modules) +@import ObjFW; +# else +# import +# endif #endif static const uint8_t bytes[] = { EOF od -vtx1 "$1" | cut -d' ' -sf2- | \ Index: utils/objfw-embed.1 ================================================================== --- utils/objfw-embed.1 +++ utils/objfw-embed.1 @@ -1,7 +1,7 @@ .\" -.\" Copyright (c) 2008-2024 Jonathan Schleifer +.\" Copyright (c) 2008-2025 Jonathan Schleifer .\" .\" All rights reserved. .\" .\" This program is free software: you can redistribute it and/or modify it .\" under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-new/NewApp.m ================================================================== --- utils/objfw-new/NewApp.m +++ utils/objfw-new/NewApp.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-new/NewClass.m ================================================================== --- utils/objfw-new/NewClass.m +++ utils/objfw-new/NewClass.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-new/NewTest.m ================================================================== --- utils/objfw-new/NewTest.m +++ utils/objfw-new/NewTest.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-new/ObjFWNew.m ================================================================== --- utils/objfw-new/ObjFWNew.m +++ utils/objfw-new/ObjFWNew.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-new/Property.h ================================================================== --- utils/objfw-new/Property.h +++ utils/objfw-new/Property.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-new/Property.m ================================================================== --- utils/objfw-new/Property.m +++ utils/objfw-new/Property.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/objfw-new/objfw-new.1 ================================================================== --- utils/objfw-new/objfw-new.1 +++ utils/objfw-new/objfw-new.1 @@ -1,7 +1,7 @@ .\" -.\" Copyright (c) 2008-2024 Jonathan Schleifer +.\" Copyright (c) 2008-2025 Jonathan Schleifer .\" .\" All rights reserved. .\" .\" This program is free software: you can redistribute it and/or modify it .\" under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofarc/Archive.h ================================================================== --- utils/ofarc/Archive.h +++ utils/ofarc/Archive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofarc/GZIPArchive.h ================================================================== --- utils/ofarc/GZIPArchive.h +++ utils/ofarc/GZIPArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofarc/GZIPArchive.m ================================================================== --- utils/ofarc/GZIPArchive.m +++ utils/ofarc/GZIPArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -33,10 +33,12 @@ static OFArc *app; static void setPermissions(OFString *destination, OFIRI *source) { + [app quarantineFile: destination]; + #ifdef OF_FILE_MANAGER_SUPPORTS_PERMISSIONS OFFileManager *fileManager = [OFFileManager defaultManager]; OFFileAttributes attributes = [fileManager attributesOfItemAtIRI: source]; OFFileAttributeKey key = OFFilePOSIXPermissions; @@ -45,12 +47,10 @@ forKey: key]; [fileManager setAttributes: destinationAttributes ofItemAtPath: destination]; #endif - - [app quarantineFile: destination]; } static void setModificationDate(OFString *path, OFGZIPStream *stream) { Index: utils/ofarc/LHAArchive.h ================================================================== --- utils/ofarc/LHAArchive.h +++ utils/ofarc/LHAArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofarc/LHAArchive.m ================================================================== --- utils/ofarc/LHAArchive.m +++ utils/ofarc/LHAArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -49,10 +49,12 @@ } static void setPermissions(OFString *path, OFLHAArchiveEntry *entry) { + [app quarantineFile: path]; + #ifdef OF_FILE_MANAGER_SUPPORTS_PERMISSIONS OFNumber *POSIXPermissions = entry.POSIXPermissions; if (POSIXPermissions != nil) { OFFileAttributes attributes; @@ -65,12 +67,10 @@ [[OFFileManager defaultManager] setAttributes: attributes ofItemAtPath: path]; } #endif - - [app quarantineFile: path]; } static void setModificationDate(OFString *path, OFLHAArchiveEntry *entry) { Index: utils/ofarc/Makefile ================================================================== --- utils/ofarc/Makefile +++ utils/ofarc/Makefile @@ -18,11 +18,13 @@ ${PROG}: ${LIBOBJFW_DEP_LVL2} ${LIBOBJFWRT_DEP_LVL2} CPPFLAGS += -I../../src \ -I../../src/runtime \ -I../../src/exceptions \ + -I../../src/tls \ -I../.. \ + -DOBJFWTLS_LOCAL_INCLUDES \ -DLOCALIZATION_DIR=\"${datadir}/ofarc/localization\" LIBS := -L../../src -L../../src/tls ${OFHTTP_LIBS} -lobjfw \ -L../../src/runtime ${RUNTIME_LIBS} \ ${LIBS} LD = ${OBJC} Index: utils/ofarc/OFArc.h ================================================================== --- utils/ofarc/OFArc.h +++ utils/ofarc/OFArc.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofarc/OFArc.m ================================================================== --- utils/ofarc/OFArc.m +++ utils/ofarc/OFArc.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -36,10 +36,14 @@ #import "GZIPArchive.h" #import "LHAArchive.h" #import "TarArchive.h" #import "ZIPArchive.h" #import "ZooArchive.h" + +#ifdef HAVE_TLS_SUPPORT +# import "ObjFWTLS.h" +#endif #import "OFCreateDirectoryFailedException.h" #import "OFGetItemAttributesFailedException.h" #import "OFInvalidArgumentException.h" #import "OFInvalidFormatException.h" @@ -48,10 +52,18 @@ #import "OFReadFailedException.h" #import "OFSeekFailedException.h" #import "OFWriteFailedException.h" #define bufferSize 4096 + +#ifdef HAVE_TLS_SUPPORT +void +_reference_to_ObjFWTLS(void) +{ + _ObjFWTLS_reference = 1; +} +#endif OF_APPLICATION_DELEGATE(OFArc) static void help(OFStream *stream, bool full, int status) Index: utils/ofarc/TarArchive.h ================================================================== --- utils/ofarc/TarArchive.h +++ utils/ofarc/TarArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofarc/TarArchive.m ================================================================== --- utils/ofarc/TarArchive.m +++ utils/ofarc/TarArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -41,10 +41,12 @@ static OFArc *app; static void setPermissions(OFString *path, OFTarArchiveEntry *entry) { + [app quarantineFile: path]; + #ifdef OF_FILE_MANAGER_SUPPORTS_PERMISSIONS OFNumber *POSIXPermissions = [OFNumber numberWithUnsignedLongLong: entry.POSIXPermissions.longLongValue & 0777]; OFFileAttributes attributes = [OFDictionary dictionaryWithObject: POSIXPermissions @@ -51,12 +53,10 @@ forKey: OFFilePOSIXPermissions]; [[OFFileManager defaultManager] setAttributes: attributes ofItemAtPath: path]; #endif - - [app quarantineFile: path]; } static void setModificationDate(OFString *path, OFTarArchiveEntry *entry) { Index: utils/ofarc/ZIPArchive.h ================================================================== --- utils/ofarc/ZIPArchive.h +++ utils/ofarc/ZIPArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofarc/ZIPArchive.m ================================================================== --- utils/ofarc/ZIPArchive.m +++ utils/ofarc/ZIPArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -47,10 +47,12 @@ static OFArc *app; static void setPermissions(OFString *path, OFZIPArchiveEntry *entry) { + [app quarantineFile: path]; + #ifdef OF_FILE_MANAGER_SUPPORTS_PERMISSIONS if ((entry.versionMadeBy >> 8) == OFZIPArchiveEntryAttributeCompatibilityUNIX) { OFNumber *mode = [OFNumber numberWithUnsignedShort: (entry.versionSpecificAttributes >> 16) & 0777]; @@ -60,12 +62,10 @@ [[OFFileManager defaultManager] setAttributes: attributes ofItemAtPath: path]; } #endif - - [app quarantineFile: path]; } static void setModificationDate(OFString *path, OFZIPArchiveEntry *entry) { Index: utils/ofarc/ZooArchive.h ================================================================== --- utils/ofarc/ZooArchive.h +++ utils/ofarc/ZooArchive.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofarc/ZooArchive.m ================================================================== --- utils/ofarc/ZooArchive.m +++ utils/ofarc/ZooArchive.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -40,10 +40,12 @@ static OFArc *app; static void setPermissions(OFString *path, OFZooArchiveEntry *entry) { + [app quarantineFile: path]; + #ifdef OF_FILE_MANAGER_SUPPORTS_PERMISSIONS OFNumber *POSIXPermissions = entry.POSIXPermissions; if (POSIXPermissions != nil) { OFFileAttributes attributes; @@ -56,12 +58,10 @@ [[OFFileManager defaultManager] setAttributes: attributes ofItemAtPath: path]; } #endif - - [app quarantineFile: path]; } static void setModificationDate(OFString *path, OFZooArchiveEntry *entry) { Index: utils/ofarc/ofarc.1 ================================================================== --- utils/ofarc/ofarc.1 +++ utils/ofarc/ofarc.1 @@ -1,7 +1,7 @@ .\" -.\" Copyright (c) 2008-2024 Jonathan Schleifer +.\" Copyright (c) 2008-2025 Jonathan Schleifer .\" .\" All rights reserved. .\" .\" This program is free software: you can redistribute it and/or modify it .\" under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofdns/OFDNS.m ================================================================== --- utils/ofdns/OFDNS.m +++ utils/ofdns/OFDNS.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofdns/ofdns.1 ================================================================== --- utils/ofdns/ofdns.1 +++ utils/ofdns/ofdns.1 @@ -1,7 +1,7 @@ .\" -.\" Copyright (c) 2008-2024 Jonathan Schleifer +.\" Copyright (c) 2008-2025 Jonathan Schleifer .\" .\" All rights reserved. .\" .\" This program is free software: you can redistribute it and/or modify it .\" under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofhash/Makefile ================================================================== --- utils/ofhash/Makefile +++ utils/ofhash/Makefile @@ -13,11 +13,13 @@ ${PROG}: ${LIBOBJFW_DEP_LVL2} ${LIBOBJFWRT_DEP_LVL2} CPPFLAGS += -I../../src \ -I../../src/runtime \ -I../../src/exceptions \ + -I../../src/tls \ -I../.. \ + -DOBJFWTLS_LOCAL_INCLUDES \ -DLOCALIZATION_DIR=\"${datadir}/ofhash/localization\" LIBS := -L../../src -L../../src/tls ${OFHASH_LIBS} -lobjfw \ -L../../src/runtime ${RUNTIME_LIBS} \ ${LIBS} LD = ${OBJC} Index: utils/ofhash/OFHash.m ================================================================== --- utils/ofhash/OFHash.m +++ utils/ofhash/OFHash.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, @@ -34,16 +34,28 @@ #import "OFSHA384Hash.h" #import "OFSHA512Hash.h" #import "OFSandbox.h" #import "OFSecureData.h" #import "OFStdIOStream.h" + +#ifdef HAVE_TLS_SUPPORT +# import "ObjFWTLS.h" +#endif #import "OFOpenItemFailedException.h" #import "OFReadFailedException.h" @interface OFHash: OFObject @end + +#ifdef HAVE_TLS_SUPPORT +void +_reference_to_ObjFWTLS(void) +{ + _ObjFWTLS_reference = 1; +} +#endif OF_APPLICATION_DELEGATE(OFHash) static void help(void) Index: utils/ofhash/ofhash.1 ================================================================== --- utils/ofhash/ofhash.1 +++ utils/ofhash/ofhash.1 @@ -1,7 +1,7 @@ .\" -.\" Copyright (c) 2008-2024 Jonathan Schleifer +.\" Copyright (c) 2008-2025 Jonathan Schleifer .\" .\" All rights reserved. .\" .\" This program is free software: you can redistribute it and/or modify it .\" under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofhttp/Makefile ================================================================== --- utils/ofhttp/Makefile +++ utils/ofhttp/Makefile @@ -16,10 +16,11 @@ CPPFLAGS += -I../../src \ -I../../src/runtime \ -I../../src/exceptions \ -I../../src/tls \ -I../.. \ + -DOBJFWTLS_LOCAL_INCLUDES \ -DLOCALIZATION_DIR='"${datadir}/ofhttp/localization"' LIBS := -L../../src -L../../src/tls ${OFHTTP_LIBS} -lobjfw \ -L../../src/runtime ${RUNTIME_LIBS} \ ${LIBS} LD = ${OBJC} Index: utils/ofhttp/OFHTTP.m ================================================================== --- utils/ofhttp/OFHTTP.m +++ utils/ofhttp/OFHTTP.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofhttp/ProgressBar.h ================================================================== --- utils/ofhttp/ProgressBar.h +++ utils/ofhttp/ProgressBar.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofhttp/ProgressBar.m ================================================================== --- utils/ofhttp/ProgressBar.m +++ utils/ofhttp/ProgressBar.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2024 Jonathan Schleifer + * Copyright (c) 2008-2025 Jonathan Schleifer * * All rights reserved. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3.0 only, Index: utils/ofhttp/ofhttp.1 ================================================================== --- utils/ofhttp/ofhttp.1 +++ utils/ofhttp/ofhttp.1 @@ -1,7 +1,7 @@ .\" -.\" Copyright (c) 2008-2024 Jonathan Schleifer +.\" Copyright (c) 2008-2025 Jonathan Schleifer .\" .\" All rights reserved. .\" .\" This program is free software: you can redistribute it and/or modify it .\" under the terms of the GNU Lesser General Public License version 3.0 only,