Fix for tags unsigned long and unsigned short
(SerialNumber wrong)
This commit is contained in:
@@ -824,10 +824,10 @@ void Tag::toString (char* buffer, int ofs) {
|
|||||||
switch (type) {
|
switch (type) {
|
||||||
case UNDEFINED:
|
case UNDEFINED:
|
||||||
case BYTE: sprintf (b, "%d", value[i+ofs]); break;
|
case BYTE: sprintf (b, "%d", value[i+ofs]); break;
|
||||||
case SSHORT:
|
case SSHORT: sprintf (b, "%d", toInt(2*i+ofs)); break;
|
||||||
case SHORT: sprintf (b, "%d", toInt(2*i+ofs)); break;
|
case SHORT: sprintf (b, "%u", toInt(2*i+ofs)); break;
|
||||||
case SLONG:
|
case SLONG: sprintf (b, "%ld", toInt(4*i+ofs)); break;
|
||||||
case LONG: sprintf (b, "%d", toInt(4*i+ofs)); break;
|
case LONG: sprintf (b, "%lu", toInt(4*i+ofs)); break;
|
||||||
case SRATIONAL:
|
case SRATIONAL:
|
||||||
case RATIONAL: sprintf (b, "%d/%d", (int)sget4 (value+8*i+ofs, getOrder()), (int)sget4 (value+8*i+ofs+4, getOrder())); break;
|
case RATIONAL: sprintf (b, "%d/%d", (int)sget4 (value+8*i+ofs, getOrder()), (int)sget4 (value+8*i+ofs+4, getOrder())); break;
|
||||||
case FLOAT: sprintf (b, "%g", toDouble(8*i+ofs)); break;
|
case FLOAT: sprintf (b, "%g", toDouble(8*i+ofs)); break;
|
||||||
|
Reference in New Issue
Block a user