ruby-informix 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. data/Changelog +8 -0
  2. data/informix.c +311 -315
  3. data/informix.ec +19 -23
  4. metadata +3 -4
data/informix.ec CHANGED
@@ -1,6 +1,6 @@
1
- /* $Id: informix.ec,v 1.81 2006/12/27 20:57:39 santana Exp $ */
1
+ /* $Id: informix.ec,v 1.81.2.2 2007/08/10 17:48:47 santana Exp $ */
2
2
  /*
3
- * Copyright (c) 2006, Gerardo Santana Gomez Garrido <gerardo.santana@gmail.com>
3
+ * Copyright (c) 2006-2007, Gerardo Santana Gomez Garrido <gerardo.santana@gmail.com>
4
4
  * All rights reserved.
5
5
  *
6
6
  * Redistribution and use in source and binary forms, with or without
@@ -1639,47 +1639,48 @@ make_result(cursor_t *c, VALUE record)
1639
1639
  break;
1640
1640
  }
1641
1641
  case SQLDTIME: {
1642
- register short qual;
1642
+ register short qual, i;
1643
1643
  short year, month, day, hour, minute, second;
1644
1644
  int usec;
1645
- dtime_t *dt;
1645
+ dtime_t dt;
1646
1646
  register char *dgts;
1647
1647
 
1648
1648
  month = day = 1;
1649
1649
  year = hour = minute = second = usec = 0;
1650
- dt = (dtime_t *)var->sqldata;
1651
- dgts = dt->dt_dec.dec_dgts;
1650
+ dt.dt_qual = TU_DTENCODE(TU_YEAR, TU_F5);
1651
+ dtextend((dtime_t *)var->sqldata, &dt);
1652
+ dgts = dt.dt_dec.dec_dgts;
1652
1653
 
1653
- qual = TU_START(dt->dt_qual);
1654
- for (; qual <= TU_END(dt->dt_qual); qual++) {
1654
+ for (i = 0, qual = TU_YEAR;
1655
+ qual <= TU_F5 && i < dt.dt_dec.dec_ndgts; qual++) {
1655
1656
  switch(qual) {
1656
1657
  case TU_YEAR:
1657
- year = 100**dgts++;
1658
- year += *dgts++;
1658
+ year = 100*dgts[i++];
1659
+ year += dgts[i++];
1659
1660
  break;
1660
1661
  case TU_MONTH:
1661
- month = *dgts++;
1662
+ month = dgts[i++];
1662
1663
  break;
1663
1664
  case TU_DAY:
1664
- day = *dgts++;
1665
+ day = dgts[i++];
1665
1666
  break;
1666
1667
  case TU_HOUR:
1667
- hour = *dgts++;
1668
+ hour = dgts[i++];
1668
1669
  break;
1669
1670
  case TU_MINUTE:
1670
- minute = *dgts++;
1671
+ minute = dgts[i++];
1671
1672
  break;
1672
1673
  case TU_SECOND:
1673
- second = *dgts++;
1674
+ second = dgts[i++];
1674
1675
  break;
1675
1676
  case TU_F1:
1676
- usec = 10000**dgts++;
1677
+ usec = 10000*dgts[i++];
1677
1678
  break;
1678
1679
  case TU_F3:
1679
- usec += 100**dgts++;
1680
+ usec += 100*dgts[i++];
1680
1681
  break;
1681
1682
  case TU_F5:
1682
- usec += *dgts++;
1683
+ usec += dgts[i++];
1683
1684
  break;
1684
1685
  }
1685
1686
  }
@@ -1689,11 +1690,6 @@ make_result(cursor_t *c, VALUE record)
1689
1690
  INT2FIX(hour), INT2FIX(minute), INT2FIX(second),
1690
1691
  INT2FIX(usec));
1691
1692
 
1692
- /* Clean the buffer for DATETIME columns because
1693
- * ESQL/C leaves the previous content when a
1694
- * a time field is zero.
1695
- */
1696
- memset(dt, 0, sizeof(dtime_t));
1697
1693
  break;
1698
1694
  }
1699
1695
  case SQLDECIMAL:
metadata CHANGED
@@ -1,10 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.0
2
+ rubygems_version: 0.8.11
3
3
  specification_version: 1
4
4
  name: ruby-informix
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.5.0
7
- date: 2006-12-27 00:00:00 -06:00
6
+ version: 0.5.1
7
+ date: 2007-08-10 00:00:00 -05:00
8
8
  summary: Informix driver for Ruby
9
9
  require_paths:
10
10
  - lib
@@ -25,7 +25,6 @@ required_ruby_version: !ruby/object:Gem::Version::Requirement
25
25
  platform: ruby
26
26
  signing_key:
27
27
  cert_chain:
28
- post_install_message:
29
28
  authors:
30
29
  - Gerardo Santana Gomez Garrido
31
30
  files: