HI Jani - Just part of the Incubator process. If it is on the list then I am fine with what you outlined. Just trying to keep active as a Mentor.
I am more making the point that new files added by the team should be done in the proper way. Thanks, Dave On Feb 12, 2015, at 12:57 PM, jan i wrote: > On 12 February 2015 at 21:20, Dave Fisher <[email protected]> wrote: > >> JanI - >> >> A question. Why is there a copyright in this file? >> >> Did this file come from UX Productivity as part of the initial grant or >> did you write it to contribute? >> >> Depending on the answer action should be taken to comply with >> http://www.apache.org/legal/src-headers.html > > > I wrote it to contrbute, but actually the file dates back from before we > entered incubator. I have a small set of files, that I worked on earlier > which was not in trunk.... > > Peter is working on a scripts that goes through all files to replace the > license with a new one, my reasoning was to keep everything identical until > then. We have a jira for it. > > If this procedure disturbs you then I will change that file specifically, > and Peter might then need to make the script a bit more complex (check if > header is already changed). > > Just to be precise you have caught 1 of approx 10 files that have been > added after we entered incubator (I have not counted, but it is my feeling). > > No doubt we need to get all headers corrected. I had made the change > already, had we not agreed that peter needs to do it. > > rgds > jan I. > > >> >> Regards, >> Dave >> >> On Feb 11, 2015, at 10:56 AM, [email protected] wrote: >> >>> added wrapper for zip. >>> >>> >>> Project: http://git-wip-us.apache.org/repos/asf/incubator-corinthia/repo >>> Commit: >> http://git-wip-us.apache.org/repos/asf/incubator-corinthia/commit/768c5aad >>> Tree: >> http://git-wip-us.apache.org/repos/asf/incubator-corinthia/tree/768c5aad >>> Diff: >> http://git-wip-us.apache.org/repos/asf/incubator-corinthia/diff/768c5aad >>> >>> Branch: refs/heads/experimentzip >>> Commit: 768c5aad43a31a2e30c0cda101ffa12cf276fa23 >>> Parents: 0fbd721 >>> Author: jani <[email protected]> >>> Authored: Wed Feb 11 19:55:38 2015 +0100 >>> Committer: jani <[email protected]> >>> Committed: Wed Feb 11 19:55:38 2015 +0100 >>> >>> ---------------------------------------------------------------------- >>> DocFormats/platform/src/ZipWrapper.c | 146 ++++++++++++++++++++++++++++++ >>> 1 file changed, 146 insertions(+) >>> ---------------------------------------------------------------------- >>> >>> >>> >> http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/768c5aad/DocFormats/platform/src/ZipWrapper.c >>> ---------------------------------------------------------------------- >>> diff --git a/DocFormats/platform/src/ZipWrapper.c >> b/DocFormats/platform/src/ZipWrapper.c >>> new file mode 100644 >>> index 0000000..14ed093 >>> --- /dev/null >>> +++ b/DocFormats/platform/src/ZipWrapper.c >>> @@ -0,0 +1,146 @@ >>> +// Copyright 2012-2014 UX Productivity Pty Ltd >>> +// >>> +// Licensed under the Apache License, Version 2.0 (the "License"); >>> +// you may not use this file except in compliance with the License. >>> +// You may obtain a copy of the License at >>> +// >>> +// http://www.apache.org/licenses/LICENSE-2.0 >>> +// >>> +// Unless required by applicable law or agreed to in writing, software >>> +// distributed under the License is distributed on an "AS IS" BASIS, >>> +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or >> implied. >>> +// See the License for the specific language governing permissions and >>> +// limitations under the License. >>> +#include <string.h> >>> +#include <stdlib.h> >>> +#include "DFPlatform.h" >>> +#include "unzip.h" >>> +#include "zip.h" >>> + >>> + >>> +DFextZipHandleP DFextZipOpen(const char *zipFilename, int doUnzip) { >>> + DFextZipHandleP zipHandle = malloc(sizeof(DFextZipHandle)); >>> + >>> + // no more memory >>> + if (!zipHandle) >>> + return NULL; >>> + >>> + // Open file >>> + zipHandle->zipFirst = 1; >>> + zipHandle->zipFlag = doUnzip; >>> + if (doUnzip) >>> + zipHandle->handle = unzOpen(zipFilename); >>> + else >>> + zipHandle->handle = zipOpen(zipFilename, APPEND_STATUS_CREATE); >>> + >>> + if (zipHandle->handle) >>> + return zipHandle; >>> + >>> + free(zipHandle); >>> + return NULL; >>> +} >>> + >>> + >>> + >>> +int DFextZipClose(DFextZipHandleP zipHandle) >>> +{ >>> + int rc = 0; >>> + >>> + if (zipHandle->handle) { >>> + if (zipHandle->zipFlag) >>> + rc = (unzClose(zipHandle->handle) == UNZ_OK); >>> + else >>> + rc = (zipClose(zipHandle->handle, NULL) == ZIP_OK); >>> + zipHandle->handle = NULL; >>> + } >>> + >>> + free(zipHandle); >>> + return rc ? 1 : -1; >>> +} >>> + >>> + >>> + >>> +int DFextZipOpenNextFile(DFextZipHandleP zipHandle, char *entryName, >> const int maxName) >>> +{ >>> + int rc; >>> + >>> + >>> + if (zipHandle->zipFlag) { >>> + unz_file_info info; >>> + >>> + // handling of first file and all others are different >>> + if (zipHandle->zipFirst) { >>> + rc = unzGoToFirstFile(zipHandle->handle); >>> + zipHandle->zipFirst = 0; >>> + } >>> + else >>> + rc = unzGoToNextFile(zipHandle->handle); >>> + >>> + // Error or past last file >>> + if (rc != UNZ_OK) >>> + return (rc == UNZ_END_OF_LIST_OF_FILE) ? 0 : -1; >>> + >>> + // get file name >>> + if (unzGetCurrentFileInfo(zipHandle->handle, &info, entryName, >> maxName, NULL, 0, NULL, 0) != UNZ_OK) >>> + return -1; >>> + >>> + // check for prefix "/" and if present skip file >>> + if (entryName[strlen(entryName) - 1] == '/') >>> + return DFextZipOpenNextFile(zipHandle, entryName, maxName); >>> + >>> + // open Regular file >>> + if (unzOpenCurrentFile(zipHandle->handle) != UNZ_OK) >>> + return -1; >>> + } >>> + else { >>> + return -1; // Zip file is open in write-only mode >>> + } >>> + >>> + // ready to read >>> + return 1; >>> +} >>> + >>> +int DFextZipAppendNewFile(DFextZipHandleP zipHandle, const char >> *entryName) >>> +{ >>> + zip_fileinfo fileinfo; >>> + memset(&fileinfo, 0, sizeof(fileinfo)); >>> + >>> + if (zipHandle->zipFlag) >>> + return -1; // Zip file is open in read-only mode >>> + >>> + if (zipOpenNewFileInZip(zipHandle->handle, >>> + entryName, >>> + &fileinfo, >>> + NULL, 0, >>> + NULL, 0, >>> + NULL, >>> + Z_DEFLATED, >>> + Z_DEFAULT_COMPRESSION) != ZIP_OK) { >>> + return -1; >>> + } >>> + >>> + return 1; >>> +} >>> + >>> +int DFextZipCloseFile(DFextZipHandleP zipHandle) >>> +{ >>> + if (zipHandle->zipFlag) >>> + return (unzCloseCurrentFile(zipHandle->handle) != UNZ_OK) ? -1 >> : 1; >>> + else >>> + return (zipCloseFileInZip(zipHandle->handle) != UNZ_OK) ? -1 : >> 1; >>> +} >>> + >>> + >>> + >>> + >>> +int DFextZipReadCurrentFile(DFextZipHandleP zipHandle, void *buf, const >> int maxLen) >>> +{ >>> + return unzReadCurrentFile(zipHandle->handle, buf, maxLen); >>> +} >>> + >>> + >>> + >>> +int DFextZipWriteCurrentFile(DFextZipHandleP zipHandle, const void >> *buf, const int len) >>> +{ >>> + return (zipWriteInFileInZip(zipHandle->handle, buf, len) == ZIP_OK) >> ? 1 : -1; >>> +} >>> >> >>
