From 9ad93a51a7579f7109f117e3dd378a47830e1f8f Mon Sep 17 00:00:00 2001 From: ksherlock Date: Sun, 29 Jan 2012 04:42:35 +0000 Subject: [PATCH] fix clang analyzer issues git-svn-id: https://profuse.googlecode.com/svn/branches/v2@401 aa027e90-d47c-11dd-86d7-074df07e0730 --- Device/SDKImage.cpp | 2 +- bin/newfs_pascal.cpp | 2 +- bin/xattr.cpp | 29 +++++++++++++++++++++-------- 3 files changed, 23 insertions(+), 10 deletions(-) diff --git a/Device/SDKImage.cpp b/Device/SDKImage.cpp index 17b726f..562c534 100644 --- a/Device/SDKImage.cpp +++ b/Device/SDKImage.cpp @@ -70,7 +70,7 @@ static record_thread FindDiskImageThread(NuArchive *archive) { const NuThread *thread = NuGetThread(record, i); - if (NuGetThreadID(thread) == kNuThreadIDDiskImage) + if (thread && NuGetThreadID(thread) == kNuThreadIDDiskImage) { rt.thread_index = thread->threadIdx; rt.record_index = record->recordIdx; diff --git a/bin/newfs_pascal.cpp b/bin/newfs_pascal.cpp index fb08a2b..3879d15 100644 --- a/bin/newfs_pascal.cpp +++ b/bin/newfs_pascal.cpp @@ -212,7 +212,7 @@ int main(int argc, char **argv) { struct stat st; - bool rawDevice; + bool rawDevice = false; BlockDevicePointer device; VolumeEntryPointer volume; diff --git a/bin/xattr.cpp b/bin/xattr.cpp index 89a0b3a..4dec48f 100644 --- a/bin/xattr.cpp +++ b/bin/xattr.cpp @@ -17,6 +17,19 @@ typedef std::vector::iterator vsiter; +// prototypes to shut up clang. + +void hexdump(const uint8_t *data, ssize_t size); +ssize_t get_attr_list(const char * fname, std::vector &out); +void dumpxattr(const char *file, const char *attr); +int op_list(int argc, char **argv); +int op_dump(int argc, char **argv); +int op_read(int argc, char **argv); +ssize_t read_all(int fd, std::vector &out); +int op_write(int argc, char **argv); +void usage(const char *name); + + #ifdef __APPLE__ // apple has additional parameter for position and options. @@ -165,7 +178,7 @@ char *buffer; * list a file's attributes (and size) * */ -int list(int argc, char **argv) +int op_list(int argc, char **argv) { const char *fname = *argv; @@ -217,7 +230,7 @@ int list(int argc, char **argv) * hexdump a file's attributes. * */ -int dump(int argc, char **argv) +int op_dump(int argc, char **argv) { const char *fname = *argv; @@ -250,7 +263,7 @@ int dump(int argc, char **argv) // must specify the xattr name. -int read(int argc, char **argv) +int op_read(int argc, char **argv) { if (argc != 2) @@ -339,7 +352,7 @@ ssize_t read_all(int fd, std::vector &out) // xattr write filename attrname // stdin -> filename:attrname -int write(int argc, char **argv) +int op_write(int argc, char **argv) { std::vector buffer; @@ -401,11 +414,11 @@ int main(int argc, char **argv) { if (argc < 3) usage(*argv); - if (std::strcmp(argv[1], "list") == 0) return list(argc - 2, argv + 2); - if (std::strcmp(argv[1], "dump") == 0) return dump(argc - 2, argv + 2); + if (std::strcmp(argv[1], "list") == 0) return op_list(argc - 2, argv + 2); + if (std::strcmp(argv[1], "dump") == 0) return op_dump(argc - 2, argv + 2); - if (std::strcmp(argv[1], "read") == 0) return read(argc - 2, argv + 2); - if (std::strcmp(argv[1], "write") == 0) return write(argc - 2, argv + 2); + if (std::strcmp(argv[1], "read") == 0) return op_read(argc - 2, argv + 2); + if (std::strcmp(argv[1], "write") == 0) return op_write(argc - 2, argv + 2); usage(*argv);