Move CAB-reading into its own file.
This commit is contained in:
parent
8574dcc8c5
commit
5e1f0d7e9f
3 changed files with 43 additions and 35 deletions
|
@ -4,8 +4,8 @@ ACLOCAL_AMFLAGS = -I m4
|
|||
|
||||
lib_LTLIBRARIES = libwinterop.la libmsi.la libpreload.la
|
||||
|
||||
libwinterop_la_SOURCES = fake-winterop.c makecab.c memory.c memory.h \
|
||||
dupstr.c dupstr.h subproc.c subproc.h uchars.c uchars.h
|
||||
libwinterop_la_SOURCES = fake-winterop.c makecab.c readcab.c memory.c \
|
||||
memory.h dupstr.c dupstr.h subproc.c subproc.h uchars.c uchars.h
|
||||
|
||||
libmsi_la_SOURCES = makemsi.c md5.c memory.c memory.h version.c \
|
||||
dupstr.c dupstr.h subproc.c subproc.h uchars.c uchars.h
|
||||
|
|
|
@ -27,36 +27,3 @@ uint32_t ResetAcls(const char16_t **pwzFiles, uint32_t cFiles)
|
|||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t ExtractCabBegin(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t ExtractCab(const char16_t *wzCabinet, const char16_t *wzExtractDir)
|
||||
{
|
||||
char *cab = ascii(wzCabinet, true), *dir = ascii(wzExtractDir, true);
|
||||
fprintf(stderr, "ExtractCab(\"%s\", \"%s\"\n", cab, dir);
|
||||
system_argv("cabextract", "-d", dir, cab, cNULL);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void ExtractCabFinish(void)
|
||||
{
|
||||
}
|
||||
|
||||
uint32_t EnumerateCabBegin(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t EnumerateCab(const char16_t *wzCabinet, void *pfnNotify)
|
||||
{
|
||||
/* FIXME: pfnNotify looks like a fn ptr again */
|
||||
fprintf(stderr, "EnumerateCab!\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
void EnumerateCabFinish(void)
|
||||
{
|
||||
}
|
||||
|
|
41
readcab.c
Normal file
41
readcab.c
Normal file
|
@ -0,0 +1,41 @@
|
|||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include <uchar.h>
|
||||
#include <err.h>
|
||||
|
||||
#include "memory.h"
|
||||
#include "subproc.h"
|
||||
#include "uchars.h"
|
||||
|
||||
uint32_t ExtractCabBegin(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t ExtractCab(const char16_t *wzCabinet, const char16_t *wzExtractDir)
|
||||
{
|
||||
char *cab = ascii(wzCabinet, true), *dir = ascii(wzExtractDir, true);
|
||||
warnx("ExtractCab(\"%s\", \"%s\"", cab, dir);
|
||||
system_argv("cabextract", "-d", dir, cab, cNULL);
|
||||
sfree(cab);
|
||||
sfree(dir);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void ExtractCabFinish(void)
|
||||
{
|
||||
}
|
||||
|
||||
uint32_t EnumerateCabBegin(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t EnumerateCab(const char16_t *wzCabinet, void *pfnNotify)
|
||||
{
|
||||
return -1; /* we don't support this call */
|
||||
}
|
||||
|
||||
void EnumerateCabFinish(void)
|
||||
{
|
||||
}
|
Loading…
Add table
Reference in a new issue