From f19b85f653d81d5342f37b3894b246caf9bb8643 Mon Sep 17 00:00:00 2001 From: y-sakamoto Date: Fri, 9 Aug 2019 14:20:14 +0900 Subject: [PATCH] =?UTF-8?q?fix(libcob):=20NATIONAL=E9=A0=85=E7=9B=AE?= =?UTF-8?q?=E3=81=AEMOVE=E3=81=AE=E3=83=A1=E3=83=A2=E3=83=AA=E9=81=95?= =?UTF-8?q?=E5=8F=8D=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit DISPLAY以外の数値項目からNATIONAL項目へMOVEする際, 不正なメモリへの書き込みが発生していたため,該当箇所を修正した. --- libcob/move.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libcob/move.c b/libcob/move.c index c8b075de..ec87d542 100644 --- a/libcob/move.c +++ b/libcob/move.c @@ -1503,8 +1503,9 @@ cob_move (cob_field *src, cob_field *dst) } if (COB_FIELD_TYPE (src1) != COB_TYPE_GROUP) { - if ((!(COB_FIELD_TYPE (src1) == COB_TYPE_NATIONAL || - COB_FIELD_TYPE (src1) == COB_TYPE_NATIONAL_EDITED)) && + if ((COB_FIELD_TYPE (src1) == COB_TYPE_NUMERIC_DISPLAY || + COB_FIELD_TYPE (src1) == COB_TYPE_ALPHANUMERIC || + COB_FIELD_TYPE (src1) == COB_TYPE_ALPHANUMERIC_EDITED) && (COB_FIELD_TYPE (dst) == COB_TYPE_NATIONAL || COB_FIELD_TYPE (dst) == COB_TYPE_NATIONAL_EDITED)) { #ifdef I18N_UTF8