This avoids confusion with standard ::realloc.
Change-Id: Ibeccf2f702ec37161033febf4f3926bee8f7aea6
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
} else {
int len = strlen(str);
if (d->ref.isShared() || len > int(d->alloc) || (len < d->size && len < int(d->alloc) >> 1))
- realloc(len);
+ reallocData(len);
x = d;
memcpy(x->data(), str, len + 1); // include null terminator
x->size = len;
} else {
if (d->ref.isShared() || size > int(d->alloc)
|| (!d->capacityReserved && size < d->size && size < int(d->alloc) >> 1))
- realloc(size, true);
+ reallocData(size, true);
if (int(d->alloc) >= size) {
d->size = size;
d->data()[size] = '\0';
return *this;
}
-void QByteArray::realloc(int alloc, bool grow)
+void QByteArray::reallocData(int alloc, bool grow)
{
if (grow)
alloc = qAllocMore(alloc + 1, sizeof(Data)) - 1;
{
if (str) {
if (d->ref.isShared() || d->size + len > int(d->alloc))
- realloc(d->size + len, true);
+ reallocData(d->size + len, true);
memmove(d->data()+len, d->data(), d->size);
memcpy(d->data(), str, len);
d->size += len;
QByteArray &QByteArray::prepend(char ch)
{
if (d->ref.isShared() || d->size + 1 > int(d->alloc))
- realloc(d->size + 1, true);
+ reallocData(d->size + 1, true);
memmove(d->data()+1, d->data(), d->size);
d->data()[0] = ch;
++d->size;
*this = ba;
} else if (ba.d != &shared_null.ba) {
if (d->ref.isShared() || d->size + ba.d->size > int(d->alloc))
- realloc(d->size + ba.d->size, true);
+ reallocData(d->size + ba.d->size, true);
memcpy(d->data() + d->size, ba.d->data(), ba.d->size);
d->size += ba.d->size;
d->data()[d->size] = '\0';
if (str) {
int len = strlen(str);
if (d->ref.isShared() || d->size + len > int(d->alloc))
- realloc(d->size + len, true);
+ reallocData(d->size + len, true);
memcpy(d->data() + d->size, str, len + 1); // include null terminator
d->size += len;
}
len = qstrlen(str);
if (str && len) {
if (d->ref.isShared() || d->size + len > int(d->alloc))
- realloc(d->size + len, true);
+ reallocData(d->size + len, true);
memcpy(d->data() + d->size, str, len); // include null terminator
d->size += len;
d->data()[d->size] = '\0';
QByteArray& QByteArray::append(char ch)
{
if (d->ref.isShared() || d->size + 1 > int(d->alloc))
- realloc(d->size + 1, true);
+ reallocData(d->size + 1, true);
d->data()[d->size++] = ch;
d->data()[d->size] = '\0';
return *this;
static const QStaticByteArrayData<1> shared_null;
static const QStaticByteArrayData<1> shared_empty;
Data *d;
- void realloc(int alloc, bool grow = false);
+ void reallocData(int alloc, bool grow = false);
void expand(int i);
QByteArray nulTerminated() const;
inline const char *QByteArray::constData() const
{ return d->data(); }
inline void QByteArray::detach()
-{ if (d->ref.isShared() || (d->offset != sizeof(QByteArrayData))) realloc(d->size); }
+{ if (d->ref.isShared() || (d->offset != sizeof(QByteArrayData))) reallocData(d->size); }
inline bool QByteArray::isDetached() const
{ return !d->ref.isShared(); }
inline QByteArray::QByteArray(const QByteArray &a) : d(a.d)
inline void QByteArray::reserve(int asize)
{
if (d->ref.isShared() || asize > int(d->alloc))
- realloc(asize);
+ reallocData(asize);
if (!d->capacityReserved) {
// cannot set unconditionally, since d could be the shared_null/shared_empty (which is const)
inline void QByteArray::squeeze()
{
if (d->ref.isShared() || d->size < int(d->alloc))
- realloc(d->size);
+ reallocData(d->size);
if (d->capacityReserved) {
// cannot set unconditionally, since d could be shared_null or
} else {
if (d->ref.isShared() || size > int(d->alloc) ||
(!d->capacityReserved && size < d->size && size < int(d->alloc) >> 1))
- realloc(size, true);
+ reallocData(size, true);
if (int(d->alloc) >= size) {
d->size = size;
d->data()[size] = '\0';
\sa reserve(), capacity()
*/
-// ### Qt 5: rename reallocData() to avoid confusion. 197625
-void QString::realloc(int alloc, bool grow)
+void QString::reallocData(int alloc, bool grow)
{
if (grow)
alloc = qAllocMore((alloc+1) * sizeof(QChar), sizeof(Data)) / sizeof(QChar) - 1;
operator=(str);
} else {
if (d->ref.isShared() || d->size + str.d->size > int(d->alloc))
- realloc(d->size + str.d->size, true);
+ reallocData(d->size + str.d->size, true);
memcpy(d->data() + d->size, str.d->data(), str.d->size * sizeof(QChar));
d->size += str.d->size;
d->data()[d->size] = '\0';
if (s) {
int len = str.size();
if (d->ref.isShared() || d->size + len > int(d->alloc))
- realloc(d->size + len, true);
+ reallocData(d->size + len, true);
ushort *i = d->data() + d->size;
while ((*i++ = *s++))
;
QString &QString::append(QChar ch)
{
if (d->ref.isShared() || d->size + 1 > int(d->alloc))
- realloc(d->size + 1, true);
+ reallocData(d->size + 1, true);
d->data()[d->size++] = ch.unicode();
d->data()[d->size] = '\0';
return *this;
if (isEmpty() && rx2.indexIn(*this) == -1)
return *this;
- realloc(d->size);
+ reallocData(d->size);
int index = 0;
int numCaptures = rx2.captureCount();
if (!iterator.hasNext()) // no matches at all
return *this;
- realloc(d->size);
+ reallocData(d->size);
int numCaptures = re.captureCount();
{
if (IS_RAW_DATA(d)) {
// ensure '\0'-termination for ::fromRawData strings
- const_cast<QString*>(this)->realloc(d->size);
+ const_cast<QString*>(this)->reallocData(d->size);
}
return d->data();
}
inline QString &operator+=(QChar c) {
if (d->ref.isShared() || d->size + 1 > int(d->alloc))
- realloc(d->size + 1, true);
+ reallocData(d->size + 1, true);
d->data()[d->size++] = c.unicode();
d->data()[d->size] = '\0';
return *this;
Data *d;
static void free(Data *);
- void realloc(int alloc, bool grow = false);
+ void reallocData(int alloc, bool grow = false);
void expand(int i);
void updateProperties() const;
QString multiArg(int numArgs, const QString **args) const;
inline const QChar *QString::constData() const
{ return reinterpret_cast<const QChar*>(d->data()); }
inline void QString::detach()
-{ if (d->ref.isShared() || (d->offset != sizeof(QStringData))) realloc(d->size); }
+{ if (d->ref.isShared() || (d->offset != sizeof(QStringData))) reallocData(d->size); }
inline bool QString::isDetached() const
{ return !d->ref.isShared(); }
inline QString &QString::operator=(const QLatin1String &s)
inline void QString::reserve(int asize)
{
if (d->ref.isShared() || asize > int(d->alloc))
- realloc(asize);
+ reallocData(asize);
if (!d->capacityReserved) {
// cannot set unconditionally, since d could be the shared_null/shared_empty (which is const)
inline void QString::squeeze()
{
if (d->ref.isShared() || d->size < int(d->alloc))
- realloc(d->size);
+ reallocData(d->size);
if (d->capacityReserved) {
// cannot set unconditionally, since d could be shared_null or