You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(134) |
Sep
(52) |
Oct
(13) |
Nov
(342) |
Dec
(163) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(44) |
Feb
(62) |
Mar
(158) |
Apr
(38) |
May
(70) |
Jun
(58) |
Jul
(104) |
Aug
(207) |
Sep
(83) |
Oct
(122) |
Nov
(23) |
Dec
(49) |
| 2004 |
Jan
(119) |
Feb
(132) |
Mar
(192) |
Apr
(140) |
May
(77) |
Jun
(74) |
Jul
(201) |
Aug
(63) |
Sep
(102) |
Oct
(70) |
Nov
(173) |
Dec
(78) |
| 2005 |
Jan
(174) |
Feb
(197) |
Mar
(105) |
Apr
(59) |
May
(77) |
Jun
(43) |
Jul
(21) |
Aug
(18) |
Sep
(47) |
Oct
(37) |
Nov
(74) |
Dec
(50) |
| 2006 |
Jan
(44) |
Feb
(19) |
Mar
(32) |
Apr
(24) |
May
(31) |
Jun
(55) |
Jul
(138) |
Aug
(28) |
Sep
(12) |
Oct
(41) |
Nov
(58) |
Dec
(24) |
| 2007 |
Jan
(28) |
Feb
(14) |
Mar
(10) |
Apr
(68) |
May
(30) |
Jun
(26) |
Jul
(18) |
Aug
(63) |
Sep
(19) |
Oct
(29) |
Nov
(20) |
Dec
(10) |
| 2008 |
Jan
(38) |
Feb
(7) |
Mar
(37) |
Apr
(120) |
May
(41) |
Jun
(36) |
Jul
(39) |
Aug
(24) |
Sep
(28) |
Oct
(30) |
Nov
(36) |
Dec
(75) |
| 2009 |
Jan
(46) |
Feb
(22) |
Mar
(50) |
Apr
(70) |
May
(134) |
Jun
(105) |
Jul
(75) |
Aug
(34) |
Sep
(38) |
Oct
(34) |
Nov
(19) |
Dec
(20) |
| 2010 |
Jan
(11) |
Feb
(20) |
Mar
(65) |
Apr
(83) |
May
(104) |
Jun
(73) |
Jul
(78) |
Aug
(57) |
Sep
(43) |
Oct
(35) |
Nov
(9) |
Dec
(4) |
| 2011 |
Jan
(21) |
Feb
(11) |
Mar
(18) |
Apr
(10) |
May
(18) |
Jun
(15) |
Jul
(48) |
Aug
(25) |
Sep
(17) |
Oct
(45) |
Nov
(15) |
Dec
(12) |
| 2012 |
Jan
(21) |
Feb
(9) |
Mar
(12) |
Apr
(9) |
May
(9) |
Jun
(5) |
Jul
(1) |
Aug
(10) |
Sep
(12) |
Oct
(1) |
Nov
(28) |
Dec
(5) |
| 2013 |
Jan
(4) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2015 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
| 2016 |
Jan
(2) |
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
1
|
2
|
3
|
4
|
5
|
|
6
(1) |
7
(1) |
8
|
9
|
10
(1) |
11
|
12
(1) |
|
13
(1) |
14
|
15
|
16
|
17
|
18
|
19
|
|
20
|
21
|
22
|
23
|
24
|
25
|
26
(2) |
|
27
|
28
|
29
|
30
(11) |
31
|
|
|
|
From: <ka...@us...> - 2011-03-07 22:22:15
|
Revision: 3495
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3495&view=rev
Author: kappa1
Date: 2011-03-07 22:22:08 +0000 (Mon, 07 Mar 2011)
Log Message:
-----------
AppletLoader: Add better checks/protection to reading cache/version files in case of corruption. Close resources properly when writing cache/version files. Add preliminary list of contributors. Thx to Arielsan for finding issue and providing patch.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2011-03-06 01:34:06 UTC (rev 3494)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2011-03-07 22:22:08 UTC (rev 3495)
@@ -129,10 +129,23 @@
* <li>lwjgl_arguments - </li> [String] used to pass the hidden LWJGL parameters to LWJGL e.g. ("-Dorg.lwjgl.input.Mouse.allowNegativeMouseCoords=true -Dorg.lwjgl.util.Debug=true").</li>
* </ul>
* </p>
- * @author kappaOne
+ * @author kappaOne <one...@gm...>
* @author Brian Matzon <br...@ma...>
* @version $Revision$
* $Id$
+ *
+ * Contributors:
+ * <ul>
+ * <li>Arielsan</li>
+ * <li>Bobjob</li>
+ * <li>Dashiva</li>
+ * <li>Kevglass</li>
+ * <li>MatthiasM</li>
+ * <li>Mickelukas</li>
+ * <li>NateS</li>
+ * <li>Ruben01</li>
+ * </ul>
+ *
*/
public class AppletLoader extends Applet implements Runnable, AppletStub {
@@ -844,10 +857,22 @@
* @throws Exception if it fails to read value
*/
protected float readVersionFile(File file) throws Exception {
- DataInputStream dis = new DataInputStream(new FileInputStream(file));
- float version = dis.readFloat();
- dis.close();
- return version;
+ FileInputStream fis = new FileInputStream(file);
+ try {
+ DataInputStream dis = new DataInputStream(fis);
+ float version = dis.readFloat();
+ dis.close();
+ return version;
+ } catch (Exception e) {
+ // failed to read version file
+ e.printStackTrace();
+ }
+ finally {
+ fis.close();
+ }
+
+ // return 0 if failed to read file
+ return 0;
}
/**
@@ -858,9 +883,11 @@
* @throws Exception if it fails to write file
*/
protected void writeVersionFile(File file, float version) throws Exception {
- DataOutputStream dos = new DataOutputStream(new FileOutputStream(file));
+ FileOutputStream fos = new FileOutputStream(file);
+ DataOutputStream dos = new DataOutputStream(fos);
dos.writeFloat(version);
dos.close();
+ fos.close();
}
/**
@@ -872,10 +899,21 @@
*/
@SuppressWarnings("unchecked")
protected HashMap<String, Long> readCacheFile(File file) throws Exception {
- ObjectInputStream dis = new ObjectInputStream(new FileInputStream(file));
- HashMap<String, Long> hashMap = (HashMap<String, Long>)dis.readObject();
- dis.close();
- return hashMap;
+ FileInputStream fis = new FileInputStream(file);
+ try {
+ ObjectInputStream dis = new ObjectInputStream(fis);
+ HashMap<String, Long> hashMap = (HashMap<String, Long>) dis.readObject();
+ dis.close();
+ return hashMap;
+ } catch (Exception e) {
+ // failed to read cache file
+ e.printStackTrace();
+ } finally {
+ fis.close();
+ }
+
+ // return an empty map if failed to read file
+ return new HashMap<String, Long>();
}
/**
@@ -886,9 +924,11 @@
* @throws Exception if it fails to write file
*/
protected void writeCacheFile(File file, HashMap<String, Long> filesLastModified) throws Exception {
- ObjectOutputStream dos = new ObjectOutputStream(new FileOutputStream(file));
+ FileOutputStream fos = new FileOutputStream(file);
+ ObjectOutputStream dos = new ObjectOutputStream(fos);
dos.writeObject(filesLastModified);
dos.close();
+ fos.close();
}
/**
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|