Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit2a8b626

Browse files
author
Michael Meskes
committed
Fixed segfault in Informix mode.
1 parente32bba2 commit2a8b626

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

‎src/interfaces/ecpg/ChangeLog

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1854,6 +1854,10 @@ Tue Jul 20 09:15:21 CEST 2004
18541854
Mon Jul 26 09:04:53 CEST 2004
18551855

18561856
- SQL defines are only used in SQL space in Informix mode.
1857+
1858+
Mon Sep 6 13:17:46 CEST 2004
1859+
1860+
- Fixed bug in Informix mode that caused a segfault.
18571861
- Set pgtypes library version to 1.2.
18581862
- Set ecpg version to 3.2.0.
18591863
- Set compat library version to 1.2.

‎src/interfaces/ecpg/preproc/preproc.y

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.295 2004/08/28 18:04:51 tgl Exp $*/
1+
/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.296 2004/09/06 11:23:07 meskes Exp $*/
22

33
/* Copyright comment*/
44
%{
@@ -230,6 +230,11 @@ adjust_informix(struct arguments *list)
230230
ptr->variable =new_variable(cat_str(4,make_str("("),mm_strdup(ECPGtype_name(ptr->variable->type->u.element->type)),make_str(" *)(ECPG_informix_get_var("),mm_strdup(temp)),ECPGmake_array_type(ECPGmake_simple_type(ptr->variable->type->u.element->type,make_str("1")), ptr->variable->type->size),0);
231231
sprintf(temp,"%d, (", ecpg_informix_var++);
232232
}
233+
elseif ((ptr->variable->type->type == ECPGt_char || ptr->variable->type->type == ECPGt_unsigned_char) &&atoi(ptr->variable->type->size) >1)
234+
{
235+
ptr->variable =new_variable(cat_str(4,make_str("("),mm_strdup(ECPGtype_name(ptr->variable->type->type)),make_str(" *)(ECPG_informix_get_var("),mm_strdup(temp)),ECPGmake_simple_type(ptr->variable->type->type, ptr->variable->type->size),0);
236+
sprintf(temp,"%d, (", ecpg_informix_var++);
237+
}
233238
else
234239
{
235240
ptr->variable =new_variable(cat_str(4,make_str("*("),mm_strdup(ECPGtype_name(ptr->variable->type->type)),make_str(" *)(ECPG_informix_get_var("),mm_strdup(temp)),ECPGmake_simple_type(ptr->variable->type->type, ptr->variable->type->size),0);

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp