From 2a8d656d268ccf03e89e2e1bcc28b8834b12f7aa Mon Sep 17 00:00:00 2001 From: Jacques Vidrine Date: Tue, 6 Jan 2004 18:43:31 +0000 Subject: [PATCH] Avoid undefined behavior: foo[i] = bar[++i]; /* Which operator [] will be evaluated first? */ --- lib/libc/posix1e/acl_delete_entry.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libc/posix1e/acl_delete_entry.c b/lib/libc/posix1e/acl_delete_entry.c index e867ff606b0..3a7609a2b06 100644 --- a/lib/libc/posix1e/acl_delete_entry.c +++ b/lib/libc/posix1e/acl_delete_entry.c @@ -61,9 +61,9 @@ acl_delete_entry(acl_t acl, acl_entry_t entry_d) if ((acl->ats_acl.acl_entry[i].ae_tag == entry_d->ae_tag) && (acl->ats_acl.acl_entry[i].ae_id == entry_d->ae_id)) { /* ...shift the remaining entries... */ - while (i < acl->ats_acl.acl_cnt - 1) + for (; i < acl->ats_acl.acl_cnt - 1; ++i) acl->ats_acl.acl_entry[i] = - acl->ats_acl.acl_entry[++i]; + acl->ats_acl.acl_entry[i]; /* ...drop the count and zero the unused entry... */ acl->ats_acl.acl_cnt--; bzero(&acl->ats_acl.acl_entry[i],