File tree Expand file tree Collapse file tree 2 files changed +14
-9
lines changed
src/org/freedesktop/gstreamer Expand file tree Collapse file tree 2 files changed +14
-9
lines changed Original file line number Diff line number Diff line change 2525import java .util .LinkedList ;
2626import java .util .List ;
2727
28+ import org .freedesktop .gstreamer .lowlevel .GType ;
29+ import org .freedesktop .gstreamer .lowlevel .GValueAPI ;
30+ import org .freedesktop .gstreamer .lowlevel .GstIteratorAPI ;
2831import org .freedesktop .gstreamer .lowlevel .GstNative ;
32+ import org .freedesktop .gstreamer .lowlevel .GstTypes ;
2933import org .freedesktop .gstreamer .lowlevel .NativeObject ;
30- import org .freedesktop .gstreamer .lowlevel .GstIteratorAPI ;
3134
3235import com .sun .jna .Pointer ;
33- import org .freedesktop .gstreamer .lowlevel .GType ;
34- import org .freedesktop .gstreamer .lowlevel .GValueAPI ;
35- import org .freedesktop .gstreamer .lowlevel .GstTypes ;
3636
3737/**
3838 *
@@ -78,10 +78,10 @@ class IteratorImpl implements java.util.Iterator<T> {
7878
7979 private T getNext () {
8080 if (gst .gst_iterator_next (handle (), gValue ) == 1 ) {
81- next = (T ) gValue .getValue ();
81+ T result = (T ) gValue .getValue ();
8282 // reset cached structure or we get a memory leak
83- GValueAPI . GVALUE_API . g_value_reset ( gValue );
84- return next ;
83+ gValue . reset ( );
84+ return result ;
8585 } else {
8686 return null ;
8787 }
Original file line number Diff line number Diff line change 2121
2222package org .freedesktop .gstreamer .lowlevel ;
2323
24+ import java .util .Arrays ;
2425import java .util .HashMap ;
26+ import java .util .List ;
2527
2628import org .freedesktop .gstreamer .GObject ;
2729import org .freedesktop .gstreamer .lowlevel .annotations .CallerOwnsReturn ;
3032import com .sun .jna .Library ;
3133import com .sun .jna .NativeLong ;
3234import com .sun .jna .Pointer ;
33- import java .util .Arrays ;
34- import java .util .List ;
3535
3636/**
3737 *
@@ -90,11 +90,16 @@ public GValue(GType type, Object val) {
9090 }
9191
9292 public GValue () {}
93+
9394 public GValue (Pointer ptr ) {
9495 useMemory (ptr );
9596 read ();
9697 }
9798
99+ public void reset () {
100+ GValueAPI .GVALUE_API .g_value_reset (this );
101+ }
102+
98103 private <T > T validateVal (Object val , Class <T > clazz ) {
99104 return validateVal (val , clazz , false );
100105 }
You can’t perform that action at this time.
0 commit comments