File tree Expand file tree Collapse file tree 2 files changed +26
-0
lines changed
Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Original file line number Diff line number Diff line change @@ -777,6 +777,27 @@ namespace pen
777777 return 0 ;
778778 }
779779
780+ pen_error filesystem_read_file_to_buffer_direct (const c8* filename, void ** p_buffer, u32 & buffer_size)
781+ {
782+ // check for abs files
783+ FILE* file = fopen (filename, " rb" );
784+ if (file)
785+ {
786+ fseek (file, 0L , SEEK_END);
787+ size_t size = (u32 )ftell (file);
788+ fseek (file, 0L , SEEK_SET);
789+ void * buf = pen::memory_alloc (size + 1 );
790+ ((c8*)buf)[size] = ' \0 ' ;
791+ fread (buf, 1 , size, file);
792+ fclose (file);
793+
794+ buffer_size = size;
795+ *p_buffer = buf;
796+ }
797+
798+ return PEN_ERR_OK;
799+ }
800+
780801 pen_error filesystem_read_file_to_buffer (const c8* filename, void ** p_buffer, u32 & buffer_size)
781802 {
782803 AAsset* asset = AAssetManager_open (s_android_context.m_asset_manager , filename, AASSET_MODE_STREAMING);
Original file line number Diff line number Diff line change @@ -122,6 +122,11 @@ namespace pen
122122 return PEN_ERR_FILE_NOT_FOUND;
123123 }
124124
125+ pen_error filesystem_read_file_to_buffer_direct (const c8* filename, void ** p_buffer, u32 & buffer_size)
126+ {
127+ filesystem_read_file_to_buffer (filename, p_buffer, buffer_size);
128+ }
129+
125130 pen_error filesystem_enum_volumes (fs_tree_node& tree)
126131 {
127132 DWORD drive_bit_mask = GetLogicalDrives ();
You can’t perform that action at this time.
0 commit comments