From a9aa206b7b8ac4e69f8c46233b4080e00e845ff5 Mon Sep 17 00:00:00 2001 From: Edward Welbourne Date: Mon, 27 May 2019 19:13:54 +0200 Subject: Move text-related code out of corelib/tools/ to corelib/text/ This includes byte array, string, char, unicode, locale, collation and regular expressions. Change-Id: I8b125fa52c8c513eb57a0f1298b91910e5a0d786 Reviewed-by: Volker Hilsheimer --- src/corelib/tools/qvsnprintf.cpp | 129 --------------------------------------- 1 file changed, 129 deletions(-) delete mode 100644 src/corelib/tools/qvsnprintf.cpp (limited to 'src/corelib/tools/qvsnprintf.cpp') diff --git a/src/corelib/tools/qvsnprintf.cpp b/src/corelib/tools/qvsnprintf.cpp deleted file mode 100644 index 43a21771a1..0000000000 --- a/src/corelib/tools/qvsnprintf.cpp +++ /dev/null @@ -1,129 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or (at your option) the GNU General -** Public license version 3 or any later version approved by the KDE Free -** Qt Foundation. The licenses are as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-2.0.html and -** https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qplatformdefs.h" - -#include "qbytearray.h" -#include "qstring.h" - -#include "string.h" - -QT_BEGIN_NAMESPACE - -#if !defined(QT_VSNPRINTF) || defined(Q_CLANG_QDOC) - -/*! - \relates QByteArray - - A portable \c vsnprintf() function. Will call \c ::vsnprintf(), \c - ::_vsnprintf(), or \c ::vsnprintf_s depending on the system, or - fall back to an internal version. - - \a fmt is the \c printf() format string. The result is put into - \a str, which is a buffer of at least \a n bytes. - - The caller is responsible to call \c va_end() on \a ap. - - \warning Since vsnprintf() shows different behavior on certain - platforms, you should not rely on the return value or on the fact - that you will always get a 0 terminated string back. - - Ideally, you should never call this function but use QString::asprintf() - instead. - - \sa qsnprintf(), QString::asprintf() -*/ - -int qvsnprintf(char *str, size_t n, const char *fmt, va_list ap) -{ - if (!str || !fmt) - return -1; - - const QByteArray ba = QString::vasprintf(fmt, ap).toLocal8Bit(); - - if (n > 0) { - size_t blen = qMin(size_t(ba.length()), size_t(n - 1)); - memcpy(str, ba.constData(), blen); - str[blen] = '\0'; // make sure str is always 0 terminated - } - - return ba.length(); -} - -#else - -QT_BEGIN_INCLUDE_NAMESPACE -#include -QT_END_INCLUDE_NAMESPACE - -int qvsnprintf(char *str, size_t n, const char *fmt, va_list ap) -{ - return QT_VSNPRINTF(str, n, fmt, ap); -} - -#endif - -/*! - \target bytearray-qsnprintf - \relates QByteArray - - A portable snprintf() function, calls qvsnprintf. - - \a fmt is the \c printf() format string. The result is put into - \a str, which is a buffer of at least \a n bytes. - - \warning Call this function only when you know what you are doing - since it shows different behavior on certain platforms. - Use QString::asprintf() to format a string instead. - - \sa qvsnprintf(), QString::asprintf() -*/ - -int qsnprintf(char *str, size_t n, const char *fmt, ...) -{ - va_list ap; - va_start(ap, fmt); - - int ret = qvsnprintf(str, n, fmt, ap); - va_end(ap); - - return ret; -} - -QT_END_NAMESPACE -- cgit v1.2.3