~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/field/decimal.cc

  • Committer: Brian Aker
  • Date: 2009-07-11 05:59:19 UTC
  • mfrom: (1089.1.9 merge)
  • Revision ID: brian@gaz-20090711055919-m4px3crrdgta5lie
Collection of patches from new-cleanup (includes asserts for field in debug)

Show diffs side-by-side

added added

removed removed

Lines of Context:
128
128
  int err;
129
129
  my_decimal decimal_value;
130
130
 
 
131
  ASSERT_COLUMN_MARKED_FOR_WRITE;
 
132
 
131
133
  if ((err= str2my_decimal(E_DEC_FATAL_ERROR &
132
134
                           ~(E_DEC_OVERFLOW | E_DEC_BAD_NUM),
133
135
                           from, length, charset_arg,
189
191
  my_decimal decimal_value;
190
192
  int err;
191
193
 
 
194
  ASSERT_COLUMN_MARKED_FOR_WRITE;
 
195
 
192
196
  err= double2my_decimal(E_DEC_FATAL_ERROR & ~E_DEC_OVERFLOW, nr,
193
197
                         &decimal_value);
194
198
  if (err)
211
215
  my_decimal decimal_value;
212
216
  int err;
213
217
 
 
218
  ASSERT_COLUMN_MARKED_FOR_WRITE;
 
219
 
214
220
  if ((err= int2my_decimal(E_DEC_FATAL_ERROR & ~E_DEC_OVERFLOW,
215
221
                           nr, unsigned_val, &decimal_value)))
216
222
  {
245
251
{
246
252
  double dbl;
247
253
  my_decimal decimal_value;
 
254
 
 
255
  ASSERT_COLUMN_MARKED_FOR_READ;
 
256
 
248
257
  my_decimal2double(E_DEC_FATAL_ERROR, val_decimal(&decimal_value), &dbl);
 
258
 
249
259
  return dbl;
250
260
}
251
261
 
254
264
{
255
265
  int64_t i;
256
266
  my_decimal decimal_value;
 
267
 
 
268
  ASSERT_COLUMN_MARKED_FOR_READ;
 
269
 
257
270
  my_decimal2int(E_DEC_FATAL_ERROR, val_decimal(&decimal_value), false, &i);
 
271
 
258
272
  return i;
259
273
}
260
274
 
261
275
 
262
276
my_decimal* Field_new_decimal::val_decimal(my_decimal *decimal_value)
263
277
{
 
278
  ASSERT_COLUMN_MARKED_FOR_READ;
 
279
 
264
280
  binary2my_decimal(E_DEC_FATAL_ERROR, ptr, decimal_value,
265
281
                    precision, dec);
266
282
  return(decimal_value);
271
287
                                   String *)
272
288
{
273
289
  my_decimal decimal_value;
 
290
 
 
291
  ASSERT_COLUMN_MARKED_FOR_READ;
 
292
 
274
293
  uint32_t fixed_precision= decimal_precision ? precision : 0;
275
294
  my_decimal2string(E_DEC_FATAL_ERROR, val_decimal(&decimal_value),
276
295
                    fixed_precision, dec, '0', val_buffer);