diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 19:30:32 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 19:30:32 -0800 |
commit | 8b23a6c7e1aee255004dd19098d4c2462b61b849 (patch) | |
tree | 7a4d682ba51f0ff0364c5ca2509f515bdaf96de9 /android/resource.c | |
parent | f721e3ac031f892af46f255a47d7f54a91317b30 (diff) | |
download | external_qemu-8b23a6c7e1aee255004dd19098d4c2462b61b849.zip external_qemu-8b23a6c7e1aee255004dd19098d4c2462b61b849.tar.gz external_qemu-8b23a6c7e1aee255004dd19098d4c2462b61b849.tar.bz2 |
auto import from //depot/cupcake/@135843
Diffstat (limited to 'android/resource.c')
-rw-r--r-- | android/resource.c | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/android/resource.c b/android/resource.c new file mode 100644 index 0000000..1327ea0 --- /dev/null +++ b/android/resource.c @@ -0,0 +1,64 @@ +/* Copyright (C) 2007-2008 The Android Open Source Project +** +** This software is licensed under the terms of the GNU General Public +** License version 2, as published by the Free Software Foundation, and +** may be copied, distributed, and modified under those terms. +** +** This program is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU General Public License for more details. +*/ +#include "android/resource.h" +#include "config-host.h" +#include <string.h> + +typedef struct { + const char* name; + const unsigned char* base; + size_t size; +} FileEntry; + +const unsigned char* +_resource_find( const char* name, + const FileEntry* entries, + size_t *psize ) +{ + const FileEntry* e = entries; + + for ( ; e->name != NULL; e++ ) { + //dprint("SCAN %s\n", e->name); + if ( strcmp(e->name, name) == 0 ) { + *psize = e->size; + return e->base; + } + } + return NULL; +} + +#undef _file_entries +#define _file_entries _skin_entries +const unsigned char* +android_resource_find( const char* name, + size_t *psize ) +{ +# include "android/skin/default.h" + return _resource_find( name, _file_entries, psize ); +} + +#undef _file_entries +#define _file_entries _icon_entries + +const unsigned char* +android_icon_find( const char* name, + size_t *psize ) +{ +#ifdef _WIN32 + return NULL; +#else +# include "android/icons.h" + return _resource_find( name, _file_entries, psize ); +#endif +} + + |