Changeset eeb354fd028bd0294368108d3758bf8e86708857

Show
Ignore:
Timestamp:
04/07/08 00:01:58 (5 months ago)
Author:
Filippo Carone <littlejohn@videolan.org>
git-committer:
Filippo Carone <littlejohn@videolan.org> 1207519318 +0200
git-parent:

[7b2e7a1a4d9802391c40867935e615c32689b556]

git-author:
Filippo Carone <littlejohn@videolan.org> 1207519301 +0200
Message:

initial release method added to the JVLC class

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • bindings/java/core/src/main/java/org/videolan/jvlc/JVLC.java

    rc71376b reeb354f  
    4646 
    4747    private MediaList mediaList; 
     48     
     49    private volatile boolean released;  
    4850     
    4951    public JVLC() 
     
    126128        return libvlc; 
    127129    } 
     130     
     131    /** 
     132     * Releases this instance and the native resources. 
     133     */ 
     134    public void release() 
     135    { 
     136        if (!released) 
     137        { 
     138            released = true; 
     139            libvlc.libvlc_release(instance); 
     140        } 
     141    } 
    128142 
    129143    /* 
     
    134148    protected void finalize() throws Throwable 
    135149    { 
    136         libvlc.libvlc_release(instance); 
     150        if (!released) 
     151        { 
     152            released = true; 
     153            libvlc.libvlc_release(instance); 
     154        } 
    137155        super.finalize(); 
    138156    } 
  • bindings/java/core/src/test/java/org/videolan/jvlc/JVLCTest.java

    r5f584e4 reeb354f  
    5151    } 
    5252     
     53    @Test 
     54    public void jvlcRelease() 
     55    { 
     56        JVLC jvlc = new JVLC(); 
     57        jvlc.release(); 
     58        jvlc.release(); 
     59    } 
    5360     
    5461 
  • bindings/java/core/src/test/java/org/videolan/jvlc/internal/MediaListPlayerTest.java

    rbf1292e reeb354f  
    7070        Assert.assertNotNull(mediaListPlayer); 
    7171        Assert.assertEquals(0, exception.raised); 
     72        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    7273    } 
    7374 
     
    8081        libvlc.libvlc_media_list_player_set_media_list(mediaListPlayer, mediaList, exception); 
    8182        Assert.assertEquals(0, exception.raised); 
     83        libvlc.libvlc_media_list_release(mediaList); 
     84        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    8285    } 
    8386 
     
    9295        libvlc.libvlc_media_list_player_set_media_list(mediaListPlayer, mediaList, exception); 
    9396        Assert.assertEquals(0, exception.raised); 
     97        libvlc.libvlc_media_list_release(mediaList); 
     98        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    9499    } 
    95100 
     
    102107        Assert.assertEquals(0, result); 
    103108        Assert.assertEquals(0, exception.raised); 
     109        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    104110    } 
    105111 
     
    111117        libvlc.libvlc_media_list_player_play(mediaListPlayer, exception); 
    112118        Assert.assertEquals(1, exception.raised); 
     119        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    113120    } 
    114121 
     
    127134        libvlc.libvlc_media_list_player_play(mediaListPlayer, exception); 
    128135        Assert.assertEquals("Exception message: " + exception.message + ".\n", 0, exception.raised); 
     136        libvlc.libvlc_media_list_release(mediaList); 
     137        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    129138    } 
    130139 
     
    153162        } 
    154163        libvlc.libvlc_media_list_player_stop(mediaListPlayer, exception); 
     164        libvlc.libvlc_media_list_release(mediaList); 
     165        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    155166 
    156167    } 
     
    184195        Thread.sleep(400); 
    185196        libvlc.libvlc_media_list_player_stop(mediaListPlayer, exception); 
     197        libvlc.libvlc_media_list_release(mediaList); 
    186198        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    187199    } 
     
    194206        int state = libvlc.libvlc_media_list_player_get_state(mediaListPlayer, exception); 
    195207        Assert.assertEquals(LibVlcState.libvlc_Stopped.ordinal(), state); 
     208        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    196209    } 
    197210 
     
    237250        Assert.assertEquals("Expected state: " + LibVlcState.libvlc_Paused +".\n", LibVlcState.libvlc_Paused.ordinal(), state); 
    238251        libvlc.libvlc_media_list_player_stop(mediaListPlayer, exception); 
     252        libvlc.libvlc_media_list_release(mediaList); 
    239253        libvlc.libvlc_media_list_player_release(mediaListPlayer); 
    240254    } 
     
    278292        libvlc.libvlc_media_list_player_next(mediaListPlayer, exception); 
    279293        Assert.assertEquals(0, exception.raised); 
     294        libvlc.libvlc_media_list_release(mediaList); 
    280295    } 
    281296 
     
    319334            mediaListPlayer, 
    320335            exception)); 
     336        libvlc.libvlc_media_list_release(mediaList); 
    321337    } 
    322338