Bug 821796
| Summary: | Upstream multibyte tests are failing on i386 architecture | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Branislav Náter <bnater> | |
| Component: | tcsh | Assignee: | Roman Kollár <rkollar> | |
| Status: | CLOSED ERRATA | QA Contact: | Iveta Wiedermann <isenfeld> | |
| Severity: | medium | Docs Contact: | ||
| Priority: | low | |||
| Version: | 6.2 | CC: | isenfeld, ovasik, praiskup | |
| Target Milestone: | rc | Keywords: | Regression | |
| Target Release: | --- | |||
| Hardware: | i686 | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| 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.
|
Story Points: | --- | |
| Clone Of: | ||||
| : | 868365 (view as bug list) | Environment: | ||
| Last Closed: | 2013-02-21 10:44:24 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 868365 | |||
|
Description
Branislav Náter
2012-05-15 14:03:31 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
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 |