~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/field/microtime.cc

  • Committer: Brian Aker
  • Date: 2011-01-25 07:22:15 UTC
  • mfrom: (2109.1.7 drizzle-build)
  • Revision ID: brian@tangent.org-20110125072215-567z6uzy5vdvn4va
Merge in build/timestamp patches/fixes.

Show diffs side-by-side

added added

removed removed

Lines of Context:
90
90
  return 0;
91
91
}
92
92
 
93
 
int Microtime::store_time(type::Time *ltime, type::timestamp_t )
 
93
int Microtime::store_time(type::Time &ltime, type::timestamp_t )
94
94
{
95
95
  long my_timezone;
96
96
  bool in_dst_time_gap;
97
97
 
98
 
  type::Time::epoch_t time_tmp= my_system_gmt_sec(ltime, &my_timezone, &in_dst_time_gap, true);
 
98
  type::Time::epoch_t time_tmp;
 
99
  ltime.convert(time_tmp, &my_timezone, &in_dst_time_gap, true);
99
100
  uint64_t tmp_seconds= time_tmp;
100
 
  uint32_t tmp_micro= ltime->second_part;
 
101
  uint32_t tmp_micro= ltime.second_part;
101
102
 
102
103
  pack_num(tmp_seconds);
103
104
  pack_num(tmp_micro, ptr +8);
182
183
{
183
184
  type::Time ltime;
184
185
 
185
 
  get_date(&ltime, 0);
 
186
  get_date(ltime, 0);
186
187
 
187
188
  return date2_class_decimal(&ltime, decimal_value);
188
189
}
222
223
  return val_buffer;
223
224
}
224
225
 
225
 
bool Microtime::get_date(type::Time *ltime, uint32_t)
 
226
bool Microtime::get_date(type::Time &ltime, uint32_t)
226
227
{
227
228
  uint64_t temp;
228
229
  uint32_t micro_temp= 0;
230
231
  unpack_num(temp);
231
232
  unpack_num(micro_temp, ptr +8);
232
233
  
233
 
  ltime->reset();
 
234
  ltime.reset();
234
235
 
235
 
  ltime->store(temp, micro_temp);
 
236
  ltime.store(temp, micro_temp);
236
237
 
237
238
  return false;
238
239
}
239
240
 
240
 
bool Microtime::get_time(type::Time *ltime)
 
241
bool Microtime::get_time(type::Time &ltime)
241
242
{
242
243
  return Microtime::get_date(ltime, 0);
243
244
}