|
|
Thiago Macieira wrote:
> Make a new function that returns QByteArray.
>
New patch attached.
--Jeff
Index: kencodingprober.cpp
===================================================================
--- kencodingprober.cpp (revision 942070)
+++ kencodingprober.cpp (working copy)
@@ -39,10 +39,9 @@
class KEncodingProberPrivate
{
public:
- KEncodingProberPrivate(): encoding(strdup("")), prober(NULL), mStart(true)
{};
+ KEncodingProberPrivate(): prober(NULL), mStart(true) {};
~KEncodingProberPrivate()
{
- delete encoding;
delete prober;
}
void setProberType(KEncodingProber::ProberType pType)
@@ -130,7 +129,7 @@
break;
} // switch
- if (encoding && strlen(encoding))
+ if (!encoding.isEmpty())
{
proberState = KEncodingProber::FoundIt;
currentConfidence = 0.99f;
@@ -140,7 +139,7 @@
KEncodingProber::ProberType proberType;
KEncodingProber::ProberState proberState;
float currentConfidence;
- const char *encoding;
+ QString encoding;
kencodingprober::nsCharSetProber *prober;
bool mStart;
};
@@ -201,12 +200,18 @@
return d->proberState;
}
+//DEPRECATED, do *not* use
const char* KEncodingProber::encodingName() const
{
+ return 0;
+}
+
+QByteArray KEncodingProber::encodingNameByteArray() const
+{
if (!d->prober)
- return strdup("UTF-8");
+ return QByteArray("UTF-8");
- return strdup(d->prober->GetCharSetName());
+ return QByteArray(d->prober->GetCharSetName());
}
float KEncodingProber::confidence() const
Index: kencodingprober.h
===================================================================
--- kencodingprober.h (revision 942070)
+++ kencodingprober.h (working copy)
@@ -125,11 +125,16 @@
ProberState state() const;
/**
- * @returns the name of the best encoding it guessed so far
+ * @returns Do not use this function. It is unsafe. Use
encodingNameByteArray instead.
*/
- const char* encodingName() const;
+ KDE_DEPRECATED const char* encodingName() const;
/**
+ * @returns a QByteArray with the name of the encoding
+ */
+ QByteArray encodingNameByteArray() const;
+
+ /**
* @returns the confidence(sureness) of encoding it guessed so far (0.0 ~
0.99), not very reliable for single byte encodings
*/
float confidence() const;
|
|