mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-12 02:39:05 +01:00
85 lines
3.7 KiB
Diff
85 lines
3.7 KiB
Diff
diff -Bbur jSSC-0.9.0-Release/src/jssc/SerialPort.java jSSC-0.9.0-briar/src/jssc/SerialPort.java
|
|
--- jSSC-0.9.0-Release/src/jssc/SerialPort.java 2011-12-21 13:29:10.000000000 +0000
|
|
+++ jSSC-0.9.0-briar/src/jssc/SerialPort.java 2012-12-06 15:07:37.786033300 +0000
|
|
@@ -30,13 +30,13 @@
|
|
*/
|
|
public class SerialPort {
|
|
|
|
- private SerialNativeInterface serialInterface;
|
|
- private SerialPortEventListener eventListener;
|
|
- private int portHandle;
|
|
- private String portName;
|
|
- private boolean portOpened = false;
|
|
- private boolean maskAssigned = false;
|
|
- private boolean eventListenerAdded = false;
|
|
+ private volatile SerialNativeInterface serialInterface;
|
|
+ private volatile SerialPortEventListener eventListener;
|
|
+ private volatile int portHandle;
|
|
+ private volatile String portName;
|
|
+ private volatile boolean portOpened = false;
|
|
+ private volatile boolean maskAssigned = false;
|
|
+ private volatile boolean eventListenerAdded = false;
|
|
|
|
|
|
public static final int BAUDRATE_110 = 110;
|
|
@@ -915,7 +915,7 @@
|
|
|
|
private class EventThread extends Thread {
|
|
|
|
- private boolean threadTerminated = false;
|
|
+ private volatile boolean threadTerminated = false;
|
|
|
|
@Override
|
|
public void run() {
|
|
diff -Bbur jSSC-0.9.0-Release/src/jssc/SerialPortList.java jSSC-0.9.0-briar/src/jssc/SerialPortList.java
|
|
--- jSSC-0.9.0-Release/src/jssc/SerialPortList.java 2011-12-21 13:30:30.000000000 +0000
|
|
+++ jSSC-0.9.0-briar/src/jssc/SerialPortList.java 2012-12-06 14:31:50.142033801 +0000
|
|
@@ -97,20 +97,15 @@
|
|
*/
|
|
private static String[] getLinuxPortNames() {
|
|
String[] returnArray = new String[]{};
|
|
- try {
|
|
- Process dmesgProcess = Runtime.getRuntime().exec("dmesg");
|
|
- BufferedReader reader = new BufferedReader(new InputStreamReader(dmesgProcess.getInputStream()));
|
|
+ File dir = new File("/dev");
|
|
+ if(dir.exists() && dir.isDirectory()){
|
|
+ File[] files = dir.listFiles();
|
|
+ if(files.length > 0){
|
|
TreeSet<String> portsTree = new TreeSet<String>();
|
|
ArrayList<String> portsList = new ArrayList<String>();
|
|
- String buffer = "";
|
|
- while((buffer = reader.readLine()) != null && !buffer.isEmpty()){
|
|
- if(buffer.matches(".*(ttyS|ttyUSB)[0-9]{1,3}.*")){
|
|
- String[] tmp = buffer.split(" ");
|
|
- for(String value : tmp){
|
|
- if(value.matches("(ttyS|ttyUSB)[0-9]{1,3}")){
|
|
- portsTree.add("/dev/" + value);
|
|
- }
|
|
- }
|
|
+ for(File file : files){
|
|
+ if(!file.isDirectory() && !file.isFile() && file.getName().matches(".*(ttyS|ttyUSB|ttyACM)[0-9]{1,3}.*")){
|
|
+ portsTree.add("/dev/" + file.getName());
|
|
}
|
|
}
|
|
for(String portName : portsTree){
|
|
@@ -130,10 +125,7 @@
|
|
}
|
|
}
|
|
returnArray = portsList.toArray(returnArray);
|
|
- reader.close();
|
|
}
|
|
- catch (IOException ex) {
|
|
- //Do nothing
|
|
}
|
|
return returnArray;
|
|
}
|
|
@@ -179,7 +171,7 @@
|
|
TreeSet<String> portsTree = new TreeSet<String>();
|
|
ArrayList<String> portsList = new ArrayList<String>();
|
|
for(File file : files){
|
|
- if(!file.isDirectory() && !file.isFile() && file.getName().matches("tty.(serial.*|usbserial.*)")){
|
|
+ if(!file.isDirectory() && !file.isFile() && file.getName().matches("tty.(modem.*|usbmodem.*|serial.*|usbserial.*)")){
|
|
portsTree.add("/dev/" + file.getName());
|
|
}
|
|
}
|