fix 2 warnings generated by GCC 4.x under linux into Adobe XMP SDK:

[ 20%] Building CXX object src/CMakeFiles/exiv2.dir/__/xmpsdk/src/XMPMeta.cpp.o                                               
/home/gilles/Documents/Devel/SVN/trunk/exiv2/xmpsdk/src/XMPMeta.cpp: In function 'XMP_Status DumpClearString(const XMP_VarString&, XMP_Status (*)(void*, const char*, XMP_StringLen), void*)':
/home/gilles/Documents/Devel/SVN/trunk/exiv2/xmpsdk/src/XMPMeta.cpp:117: warning: comparison is always false due to limited range of data type
/home/gilles/Documents/Devel/SVN/trunk/exiv2/xmpsdk/src/XMPMeta.cpp:127: warning: comparison is always true due to limited range of data type
This commit is contained in:
HumanDynamo 2010-07-22 08:27:05 +00:00
parent bc54748634
commit bb51bdad0e

View File

@ -114,7 +114,7 @@ DumpClearString ( const XMP_VarString & value, XMP_TextOutputProc outProc, void
// Output the next span of regular characters.
for ( spanEnd = spanStart; spanEnd < valueEnd; ++spanEnd ) {
if ( *spanEnd > 0x7F ) break;
if ( (unsigned char)(*spanEnd) > 0x7F ) break;
if ( (*spanEnd < 0x20) && (*spanEnd != kTab) && (*spanEnd != kLF) ) break;
}
if ( spanStart != spanEnd ) status = (*outProc) ( refCon, spanStart, (spanEnd-spanStart) );
@ -124,7 +124,7 @@ DumpClearString ( const XMP_VarString & value, XMP_TextOutputProc outProc, void
// Output the next span of irregular characters.
prevNormal = true;
for ( spanEnd = spanStart; spanEnd < valueEnd; ++spanEnd ) {
if ( ((0x20 <= *spanEnd) && (*spanEnd <= 0x7F)) || (*spanEnd == kTab) || (*spanEnd == kLF) ) break;
if ( ((0x20 <= *spanEnd) && ((unsigned char)(*spanEnd) <= 0x7F)) || (*spanEnd == kTab) || (*spanEnd == kLF) ) break;
char space = ' ';
if ( prevNormal ) space = '<';
status = (*outProc) ( refCon, &space, 1 );