Made sure that -pvd_info reports the actual PVD address
This commit is contained in:
parent
e1b1e09d71
commit
259e00f8c8
@ -1 +1 @@
|
|||||||
#define Xorriso_timestamP "2009.10.05.190215"
|
#define Xorriso_timestamP "2009.10.06.071704"
|
||||||
|
@ -12880,11 +12880,12 @@ ex:;
|
|||||||
|
|
||||||
int Xorriso_pvd_info(struct XorrisO *xorriso, int flag)
|
int Xorriso_pvd_info(struct XorrisO *xorriso, int flag)
|
||||||
{
|
{
|
||||||
int ret, msc1= -1, msc2;
|
int ret, msc1= -1, msc2, i;
|
||||||
IsoImage *image;
|
IsoImage *image;
|
||||||
struct burn_drive_info *dinfo;
|
struct burn_drive_info *dinfo;
|
||||||
struct burn_drive *drive;
|
struct burn_drive *drive;
|
||||||
char *msg;
|
char *msg, block_head[8];
|
||||||
|
off_t head_count;
|
||||||
|
|
||||||
msg= xorriso->result_line;
|
msg= xorriso->result_line;
|
||||||
ret= Xorriso_get_volume(xorriso, &image, 0);
|
ret= Xorriso_get_volume(xorriso, &image, 0);
|
||||||
@ -12897,10 +12898,22 @@ int Xorriso_pvd_info(struct XorrisO *xorriso, int flag)
|
|||||||
return(ret);
|
return(ret);
|
||||||
Xorriso_toc(xorriso, 128);
|
Xorriso_toc(xorriso, 128);
|
||||||
if(msc1 >= 0) {
|
if(msc1 >= 0) {
|
||||||
sprintf(msg, "PVD address : %ds\n", msc1 + 16);
|
for(i = msc1 + 16; i < msc1 + 32; i++) {
|
||||||
|
ret= burn_read_data(drive, (off_t) i * (off_t) 2048, block_head,
|
||||||
|
(off_t) sizeof(block_head), &head_count, 2);
|
||||||
|
if(ret <= 0) {
|
||||||
|
i= msc1 + 32;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if(block_head[0] == 1 && strncmp(block_head + 1, "CD001", 5) == 0)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if(i < msc1 + 32) {
|
||||||
|
sprintf(msg, "PVD address : %ds\n", i);
|
||||||
Xorriso_result(xorriso,0);
|
Xorriso_result(xorriso,0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
sprintf(msg, "System Id : %s\n", un0(iso_image_get_system_id(image)));
|
sprintf(msg, "System Id : %s\n", un0(iso_image_get_system_id(image)));
|
||||||
Xorriso_result(xorriso,0);
|
Xorriso_result(xorriso,0);
|
||||||
sprintf(msg, "Volume Id : %s\n", un0(iso_image_get_volume_id(image)));
|
sprintf(msg, "Volume Id : %s\n", un0(iso_image_get_volume_id(image)));
|
||||||
|
Loading…
Reference in New Issue
Block a user