pike.git / lib / modules / Sql.pmod / tds.pike

version» Context lines:

pike.git/lib/modules/Sql.pmod/tds.pike:1176:    if (val < 0) {    sgn = "-";    val = -val;    }    int cents = (val + 50)/100;    string res = sprintf("%s%d.%02d", sgn, cents/100, cents%100);    TDS_CONV_WERROR("%O ==> %O\n", raw, res);    return res;    }    case SYBNUMERIC: +  case SYBDECIMAL:    {    string res =    sprintf("%d", array_sscanf(raw[1..],    "%-" + (sizeof(raw)-1) + "c")[0]);       // Move decimal point @[scale] positions.    int scale = info->column_scale;    if (sizeof(res) < scale) {    res = "0." + ("0" * (scale - sizeof(res))) + res;    } else if (sizeof(res) == scale) {
pike.git/lib/modules/Sql.pmod/tds.pike:1200:    }       // Fix the sign.    if (!res[0]) {    res = "-" + res;    }    TDS_CONV_WERROR("%O (scale: %d) ==> %O\n",    raw, scale, res);    return res;    } -  case SYBDECIMAL: +     case SYBREAL:    case SYBFLT8:    case SYBUNIQUE:    default:    // FIXME:    TDS_CONV_WERROR("Not yet supported: %d (%O)\n",    info->cardinal_type, raw);    werror("TDS: WARNING: Datatype %d not yet supported. raw: %O\n",    info->cardinal_type, raw);    return raw;