summaryrefslogtreecommitdiff
path: root/src/libsndfile-virtual.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/libsndfile-virtual.adb')
-rw-r--r--src/libsndfile-virtual.adb8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/libsndfile-virtual.adb b/src/libsndfile-virtual.adb
index 260be7d..db0bb6e 100644
--- a/src/libsndfile-virtual.adb
+++ b/src/libsndfile-virtual.adb
@@ -32,7 +32,7 @@ package body Libsndfile.Virtual is
function asf_open_virtual
(Mode : in Interfaces.C.int;
- Sfinfo : in out File_Info;
+ Sfinfo : in out C_File_Info;
Data : in System.Address)
return System.Address;
pragma Import (C, asf_open_virtual, "asf_open_virtual");
@@ -130,7 +130,7 @@ package body Libsndfile.Virtual is
procedure Open
(File : in out Virtual_Sound_File;
Mode : in File_Mode;
- Info : in out File_Info;
+ Info : in out File_Info'Class;
Length : in File_Length_Function;
Seek : in Seek_Function;
Read : in Read_Function;
@@ -148,14 +148,14 @@ package body Libsndfile.Virtual is
File.My_Virtual.My_Read := Read;
File.My_Virtual.My_Write := Write;
File.My_Virtual.My_Tell := Tell;
- Result := asf_open_virtual (Mode_Int, Info, File.My_Virtual'Address);
+ Result := asf_open_virtual (Mode_Int, Info.Data, File.My_Virtual'Address);
if Result = System.Null_Address then
Raise_Error (sf_error (Result));
raise Program_Error;
else
File.Ptr := Result;
File.FMode := Mode;
- File.Chans := Info.My_Channels;
+ File.Chans := Info.Data.My_Channels;
end if;
end Open;