dtdocbook: fix a crash caused by type casting.
This commit is contained in:
@@ -45,7 +45,7 @@ FlexBuffer::FlexBuffer()
|
|||||||
void
|
void
|
||||||
FlexBuffer::grow(size_t needed)
|
FlexBuffer::grow(size_t needed)
|
||||||
{
|
{
|
||||||
if(needed + 1 > (size_t) maxSize){
|
if(needed + 1 > maxSize){
|
||||||
char *born = new char[maxSize = needed * 3 / 2 + 10];
|
char *born = new char[maxSize = needed * 3 / 2 + 10];
|
||||||
|
|
||||||
if(pos){
|
if(pos){
|
||||||
@@ -70,7 +70,7 @@ FlexBuffer::write(const char *d, size_t n)
|
|||||||
void
|
void
|
||||||
FlexBuffer::writeStr(const char *str )
|
FlexBuffer::writeStr(const char *str )
|
||||||
{
|
{
|
||||||
int n = strlen(str);
|
size_t n = strlen(str);
|
||||||
grow( pos + n );
|
grow( pos + n );
|
||||||
memcpy ( HeadPtr + pos, str, n );
|
memcpy ( HeadPtr + pos, str, n );
|
||||||
pos += n;
|
pos += n;
|
||||||
|
|||||||
@@ -33,8 +33,8 @@ class FlexBuffer {
|
|||||||
friend ostream &operator<< ( ostream &s, FlexBuffer &);
|
friend ostream &operator<< ( ostream &s, FlexBuffer &);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int pos;
|
size_t pos;
|
||||||
int maxSize;
|
size_t maxSize;
|
||||||
char *HeadPtr;
|
char *HeadPtr;
|
||||||
|
|
||||||
void grow(size_t);
|
void grow(size_t);
|
||||||
|
|||||||
@@ -735,7 +735,7 @@ writeGraphics(BookCaseDB &db, const char *thisBook, DBCursor &gr_cursor,
|
|||||||
const char *version;
|
const char *version;
|
||||||
const char *typeInfo;
|
const char *typeInfo;
|
||||||
const char *data;
|
const char *data;
|
||||||
int len;
|
size_t len;
|
||||||
const char *title;
|
const char *title;
|
||||||
|
|
||||||
while(gr_cursor.next(STRING_CODE, &aBook,
|
while(gr_cursor.next(STRING_CODE, &aBook,
|
||||||
@@ -765,7 +765,7 @@ writeGraphics(BookCaseDB &db, const char *thisBook, DBCursor &gr_cursor,
|
|||||||
STRING_CODE, name,
|
STRING_CODE, name,
|
||||||
STRING_CODE, version,
|
STRING_CODE, version,
|
||||||
STRING_CODE, typeInfo,
|
STRING_CODE, typeInfo,
|
||||||
-COMPRESSED_STRING_CODE, comp_agent, data, (size_t)len,
|
-COMPRESSED_STRING_CODE, comp_agent, data, len,
|
||||||
STRING_CODE, title,
|
STRING_CODE, title,
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
@@ -774,7 +774,7 @@ writeGraphics(BookCaseDB &db, const char *thisBook, DBCursor &gr_cursor,
|
|||||||
STRING_CODE, name,
|
STRING_CODE, name,
|
||||||
STRING_CODE, version,
|
STRING_CODE, version,
|
||||||
STRING_CODE, typeInfo,
|
STRING_CODE, typeInfo,
|
||||||
-STRING_CODE, data, (size_t)len,
|
-STRING_CODE, data, len,
|
||||||
STRING_CODE, title,
|
STRING_CODE, title,
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user