Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE
cdrtools.15000
gcc48wa.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gcc48wa.diff of Package cdrtools.15000
From: Jan Engelhardt <jengelh@inai.de> Date: 2013-11-14 02:36:58.866260522 +0100 References: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59125 build: workaround a gcc-4.8 bug Add memset to clear the entire buffer beforehand. Then, use memcpy, which is equally good given that the size of all strings is known. --- cdrecord/scsi_cdr.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) Index: cdrtools-3.01/cdrecord/scsi_cdr.c =================================================================== --- cdrtools-3.01.orig/cdrecord/scsi_cdr.c +++ cdrtools-3.01/cdrecord/scsi_cdr.c @@ -2282,14 +2282,13 @@ getdev(scgp, print) printf("\n"); } + memset(vendor_info, '\0', sizeof(vendor_info)); + memset(prod_ident, '\0', sizeof(prod_ident)); + memset(prod_revision, '\0', sizeof(prod_revision)); strncpy(vendor_info, inq->inq_vendor_info, sizeof (inq->inq_vendor_info)); strncpy(prod_ident, inq->inq_prod_ident, sizeof (inq->inq_prod_ident)); strncpy(prod_revision, inq->inq_prod_revision, sizeof (inq->inq_prod_revision)); - vendor_info[sizeof (inq->inq_vendor_info)] = '\0'; - prod_ident[sizeof (inq->inq_prod_ident)] = '\0'; - prod_revision[sizeof (inq->inq_prod_revision)] = '\0'; - switch (inq->type) { case INQ_DASD: @@ -2316,29 +2315,29 @@ getdev(scgp, print) if (inq->add_len == 0) { if (scgp->dev == DEV_UNKNOWN && got_inquiry) { scgp->dev = DEV_ACB5500; - strncpy(inq->inq_info_space, + memcpy(inq->inq_info_space, "ADAPTEC ACB-5500 FAKE", sizeof (inq->inq_info_space)); } else switch (scgp->dev) { case DEV_ACB40X0: - strncpy(inq->inq_info_space, + memcpy(inq->inq_info_space, "ADAPTEC ACB-40X0 FAKE", sizeof (inq->inq_info_space)); break; case DEV_ACB4000: - strncpy(inq->inq_info_space, + memcpy(inq->inq_info_space, "ADAPTEC ACB-4000 FAKE", sizeof (inq->inq_info_space)); break; case DEV_ACB4010: - strncpy(inq->inq_info_space, + memcpy(inq->inq_info_space, "ADAPTEC ACB-4010 FAKE", sizeof (inq->inq_info_space)); break; case DEV_ACB4070: - strncpy(inq->inq_info_space, + memcpy(inq->inq_info_space, "ADAPTEC ACB-4070 FAKE", sizeof (inq->inq_info_space)); break; @@ -2370,14 +2369,14 @@ getdev(scgp, print) case INQ_SEQD: if (scgp->dev == DEV_SC4000) { - strncpy(inq->inq_info_space, + memcpy(inq->inq_info_space, "SYSGEN SC4000 FAKE", sizeof (inq->inq_info_space)); } else if (inq->add_len == 0 && inq->removable && inq->ansi_version == 1) { scgp->dev = DEV_MT02; - strncpy(inq->inq_info_space, + memcpy(inq->inq_info_space, "EMULEX MT02 FAKE", sizeof (inq->inq_info_space)); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor