本文整理汇总了C++中FileNode::processExternalAttributes方法的典型用法代码示例。如果您正苦于以下问题:C++ FileNode::processExternalAttributes方法的具体用法?C++ FileNode::processExternalAttributes怎么用?C++ FileNode::processExternalAttributes使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FileNode
的用法示例。
在下文中一共展示了FileNode::processExternalAttributes方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: FileNode
FileNode *FileNode::createNodeForZipEntry(struct zip *zip,
const char *fname, zip_int64_t id) {
FileNode *n = new FileNode(zip, fname, id);
if (n == NULL) {
return NULL;
}
n->is_dir = false;
n->open_count = 0;
n->state = CLOSED;
struct zip_stat stat;
zip_stat_index(zip, id, 0, &stat);
// check that all used fields are valid
zip_uint64_t needValid = ZIP_STAT_NAME | ZIP_STAT_INDEX |
ZIP_STAT_SIZE | ZIP_STAT_MTIME;
// required fields are always valid for existing items or newly added
// directories (see zip_stat_index.c from libzip)
assert((stat.valid & needValid) == needValid);
n->m_mtime = n->m_atime = n->m_ctime = stat.mtime;
n->has_cretime = false;
n->m_size = stat.size;
n->parse_name();
n->processExternalAttributes();
n->processExtraFields();
return n;
}