Bug 821796 - Upstream multibyte tests are failing on i386 architecture
Summary: Upstream multibyte tests are failing on i386 architecture
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: tcsh
Version: 6.2
Hardware: i686
OS: Unspecified
low
medium
Target Milestone: rc
: ---
Assignee: Roman Kollár
QA Contact: Iveta Wiedermann
URL:
Whiteboard:
Depends On:
Blocks: 868365
TreeView+ depends on / blocked
 
Reported: 2012-05-15 14:03 UTC by Branislav Náter
Modified: 2013-02-21 10:44 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Cause: Mistakenly removed casting when calling a function in the history locking patch. Consequence: Multibyte tests were failing. Fix: Reverted state before the patch. Result: Tests no longer fail.
Clone Of:
: 868365 (view as bug list)
Environment:
Last Closed: 2013-02-21 10:44:24 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2013:0446 0 normal SHIPPED_LIVE tcsh bug fix update 2013-02-20 20:47:55 UTC

Description Branislav Náter 2012-05-15 14:03:31 UTC
Description of problem:
Multibyte tests from tcsh upsream suite are failing on i386 architecture.

Version-Release number of selected component (if applicable):
tcsh-6.17-19.el6_2

How reproducible:
always on i386 architecture

Steps to Reproduce:
1. run upsream test suite (/CoreOS/tcsh/Sanity/upstream)
  
Actual results:
121: EUC-JP multibyte test                           FAILED (mb-eucjp.at:90)
122: UTF-8 multibyte test                            FAILED (mb-utf8.at:90)

Expected results:
121: EUC-JP multibyte test                           ok
122: UTF-8 multibyte test                            ok

Comment 2 Pavel Raiskup 2012-09-24 11:03:51 UTC
This seems like like working fix:

  diff --git history-file-locking.patch history-file-locking.patch
  index 7e8b02f..b6db21e 100644
  --- a/tcsh-6.17.00-history-file-locking.patch
  +++ b/tcsh-6.17.00-history-file-locking.patch
  @@ -417,7 +417,7 @@ index 536097e..2543552 100644
           stream is not seekable */
        err = errno;
   -    lseek(fildes, -(off_t)partial, L_INCR);
  -+    lseek(fildes, -partial, SEEK_CUR);
  ++    lseek(fildes, -(off_t)partial, SEEK_CUR);
        errno = err;
        return res != 0 ? res : r;
    }

There was probably mistakenly removed (off_t) retype expression in
history-file-locking patch.

Another problem with this patch was found by Coverity (use after free):

  diff --git a/sh.c b/sh.c
  index 5fdffb4..7ed1f8d 100644
  --- a/sh.c
  +++ b/sh.c
  @@ -2095,7 +2095,7 @@ dosource_flg(Char **t, struct command *c, int flg)
       t = glob_all_or_error(t);
       fd = srcfile(file, 0, (hflg | flg), t);
       if ((!fd) && (!hflg) && (!bequiet))
  -       stderror(ERR_SYSTEM, f, strerror(errno));
  +       stderror(ERR_SYSTEM, fd, strerror(errno));
   
       /* We need to preserve fd and it's cleaning routines on the top of the
        * cleaning stack. Don't call cleanup_until() but clean it manually. */

Pavel

Comment 10 errata-xmlrpc 2013-02-21 10:44:24 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-0446.html


Note You need to log in before you can comment on or make changes to this bug.