freebsd-ports/archivers/libcabinet/files/patch-cffolder.cpp
Edwin Groothuis 8a8b31d05c [patch] Unbreak port: archivers/libcabinet
This port did not build with gcc 3.3.1. I also fixed a
	possible buffer overflow (they used gets() to read from
	stdin).

	Please review the patch file ``patch-cftypes.cpp'' with
	extra care, since I am not sure whether this makes sense
	(2 positions in the file, marked with ``TODO'' - thanks.

Also added some lines in cftypes.cpp to overcome the absence of
values.h on -current.

PR:		ports/55767
Submitted by:	Simon Barner <barner@in.tum.de>
2003-08-31 13:09:31 +00:00

21 lines
601 B
C++

--- cffolder.cpp.orig Tue Aug 19 18:23:48 2003
+++ cffolder.cpp Tue Aug 19 18:24:14 2003
@@ -70,7 +70,7 @@
ra_size = cab_header.get_folder_ra_size();
reserved_area = new byte[ra_size];
- if(in.read(reserved_area, ra_size).bad())
+ if(in.read((char*)reserved_area, ra_size).bad())
{
return (in.fail()) ? READ_ERROR : UNEXPECTED_EOF;
}
@@ -90,7 +90,7 @@
if(ra_size) // If reserved area present
{
- if(out.write(reserved_area, ra_size).fail()) { return WRITE_ERROR; }
+ if(out.write((char*)reserved_area, ra_size).fail()) { return WRITE_ERROR; }
}
return OK;