summaryrefslogtreecommitdiffstats
path: root/libk3b/tools
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2012-09-23 16:06:47 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2012-09-23 16:06:47 -0500
commit8ade4e21303eb4feed76a9d8b26545f65dcc708a (patch)
tree09aab4dd68a90e07f038013f2836c4e1a10b81d7 /libk3b/tools
parent1c60648ff88c6ea1f7dc5257154d6022cb2f97a1 (diff)
downloadk3b-8ade4e21303eb4feed76a9d8b26545f65dcc708a.tar.gz
k3b-8ade4e21303eb4feed76a9d8b26545f65dcc708a.zip
Update libisofs to read files greater than 2GB
This partially resolves Bug 1111
Diffstat (limited to 'libk3b/tools')
-rw-r--r--libk3b/tools/k3biso9660.cpp2
-rw-r--r--libk3b/tools/k3biso9660.h4
-rw-r--r--libk3b/tools/libisofs/isofs.cpp2
-rw-r--r--libk3b/tools/libisofs/isofs.h8
4 files changed, 8 insertions, 8 deletions
diff --git a/libk3b/tools/k3biso9660.cpp b/libk3b/tools/k3biso9660.cpp
index 45e2d12..f6ddea1 100644
--- a/libk3b/tools/k3biso9660.cpp
+++ b/libk3b/tools/k3biso9660.cpp
@@ -32,7 +32,7 @@
/* callback function for libisofs */
-int K3bIso9660::read_callback( char* buf, sector_t start, int len, void* udata )
+int K3bIso9660::read_callback( char* buf, sector_t start, long long len, void* udata )
{
K3bIso9660* isoF = static_cast<K3bIso9660*>(udata);
diff --git a/libk3b/tools/k3biso9660.h b/libk3b/tools/k3biso9660.h
index 246fb67..c25ef48 100644
--- a/libk3b/tools/k3biso9660.h
+++ b/libk3b/tools/k3biso9660.h
@@ -38,7 +38,7 @@ struct iso_directory_record;
struct el_torito_boot_descriptor;
struct iso_primary_descriptor;
-typedef long sector_t;
+typedef long long sector_t;
@@ -437,7 +437,7 @@ class LIBK3B_EXPORT K3bIso9660
int m_joliet;
// only used for creation
- static int read_callback( char* buf, sector_t start, int len, void* udata );
+ static int read_callback( char* buf, sector_t start, long long len, void* udata );
static int isofs_callback( struct iso_directory_record* idr, void *udata );
K3bIso9660Directory *dirent;
bool m_rr;
diff --git a/libk3b/tools/libisofs/isofs.cpp b/libk3b/tools/libisofs/isofs.cpp
index e5c871b..65f19eb 100644
--- a/libk3b/tools/libisofs/isofs.cpp
+++ b/libk3b/tools/libisofs/isofs.cpp
@@ -121,7 +121,7 @@ void FreeBootTable(boot_head *boot) {
boot->defentry=NULL;
}
-int BootImageSize(readfunc* read,int media,sector_t start,int len,void* udata) {
+int BootImageSize(readfunc* read,int media,sector_t start,long long len,void* udata) {
int ret;
switch(media & 0xf) {
diff --git a/libk3b/tools/libisofs/isofs.h b/libk3b/tools/libisofs/isofs.h
index f284903..8dde726 100644
--- a/libk3b/tools/libisofs/isofs.h
+++ b/libk3b/tools/libisofs/isofs.h
@@ -23,7 +23,7 @@
#include "iso_fs.h"
#include "el_torito.h"
-typedef long sector_t;
+typedef long long sector_t;
typedef struct _rr_entry {
int len; /* length of structure */
@@ -48,7 +48,7 @@ typedef struct _rr_entry {
int re; /* relocated */
char z_algo[2]; /* zizofs algorithm */
char z_params[2]; /* zizofs parameters */
- int z_size; /* zizofs real_size */
+ long long z_size; /* zizofs real_size */
} rr_entry;
typedef struct _iso_vol_desc {
@@ -74,7 +74,7 @@ typedef struct _boot_head {
/**
* this callback function needs to read 'len' sectors from 'start' into 'buf'
*/
-typedef int readfunc(char *buf,sector_t start, int len,void *);
+typedef int readfunc(char *buf,sector_t start, long long len,void *);
/**
* ProcessDir uses this callback
@@ -135,7 +135,7 @@ int JolietLevel(struct iso_volume_descriptor *ivd);
/**
* Returns the size of the boot image (in 512 byte sectors)
*/
-int BootImageSize(readfunc *read,int media,sector_t start,int len,void *udata);
+int BootImageSize(readfunc *read,int media,sector_t start,long long len,void *udata);
/**
* Frees the boot catalog entries in 'boot'. If you ever called ReadBootTable,