Loading libsparse/Android.mk +2 −1 Original line number Diff line number Diff line Loading @@ -6,7 +6,8 @@ libsparse_src_files := \ backed_block.c \ output_file.c \ sparse.c \ sparse_crc32.c sparse_crc32.c \ sparse_err.c include $(CLEAR_VARS) Loading libsparse/include/sparse/sparse.h +18 −0 Original line number Diff line number Diff line Loading @@ -157,4 +157,22 @@ int sparse_file_add_fd(struct sparse_file *s, int sparse_file_write(struct sparse_file *s, int fd, bool gz, bool sparse, bool crc); /** * sparse_file_verbose - set a sparse file cookie to print verbose errors * * @s - sparse file cookie * * Print verbose sparse file errors whenever using the sparse file cookie. */ void sparse_file_verbose(struct sparse_file *s); /** * sparse_print_verbose - function called to print verbose errors * * By default, verbose errors will print to standard error. * sparse_print_verbose may be overridden to log verbose errors somewhere else. * */ extern void (*sparse_print_verbose)(const char *fmt, ...); #endif libsparse/sparse.c +5 −0 Original line number Diff line number Diff line Loading @@ -151,3 +151,8 @@ int sparse_file_write(struct sparse_file *s, int fd, bool gz, bool sparse, return 0; } void sparse_file_verbose(struct sparse_file *s) { s->verbose = true; } libsparse/sparse_err.c 0 → 100644 +33 −0 Original line number Diff line number Diff line /* * Copyright (C) 2012 The Android Open Source Project * * 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 <sparse/sparse.h> #include <stdarg.h> #include <stdio.h> #include <unistd.h> void sparse_default_print(const char *fmt, ...) { va_list argp; va_start(argp, fmt); vfprintf(stderr, fmt, argp); va_end(argp); } void (*sparse_print_error)(const char *fmt, ...) = sparse_default_print; void (*sparse_print_verbose)(const char *fmt, ...) = sparse_default_print; libsparse/sparse_file.h +1 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ struct sparse_file { unsigned int block_size; int64_t len; bool verbose; struct backed_block_list *backed_block_list; struct output_file *out; Loading Loading
libsparse/Android.mk +2 −1 Original line number Diff line number Diff line Loading @@ -6,7 +6,8 @@ libsparse_src_files := \ backed_block.c \ output_file.c \ sparse.c \ sparse_crc32.c sparse_crc32.c \ sparse_err.c include $(CLEAR_VARS) Loading
libsparse/include/sparse/sparse.h +18 −0 Original line number Diff line number Diff line Loading @@ -157,4 +157,22 @@ int sparse_file_add_fd(struct sparse_file *s, int sparse_file_write(struct sparse_file *s, int fd, bool gz, bool sparse, bool crc); /** * sparse_file_verbose - set a sparse file cookie to print verbose errors * * @s - sparse file cookie * * Print verbose sparse file errors whenever using the sparse file cookie. */ void sparse_file_verbose(struct sparse_file *s); /** * sparse_print_verbose - function called to print verbose errors * * By default, verbose errors will print to standard error. * sparse_print_verbose may be overridden to log verbose errors somewhere else. * */ extern void (*sparse_print_verbose)(const char *fmt, ...); #endif
libsparse/sparse.c +5 −0 Original line number Diff line number Diff line Loading @@ -151,3 +151,8 @@ int sparse_file_write(struct sparse_file *s, int fd, bool gz, bool sparse, return 0; } void sparse_file_verbose(struct sparse_file *s) { s->verbose = true; }
libsparse/sparse_err.c 0 → 100644 +33 −0 Original line number Diff line number Diff line /* * Copyright (C) 2012 The Android Open Source Project * * 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 <sparse/sparse.h> #include <stdarg.h> #include <stdio.h> #include <unistd.h> void sparse_default_print(const char *fmt, ...) { va_list argp; va_start(argp, fmt); vfprintf(stderr, fmt, argp); va_end(argp); } void (*sparse_print_error)(const char *fmt, ...) = sparse_default_print; void (*sparse_print_verbose)(const char *fmt, ...) = sparse_default_print;
libsparse/sparse_file.h +1 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ struct sparse_file { unsigned int block_size; int64_t len; bool verbose; struct backed_block_list *backed_block_list; struct output_file *out; Loading