12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- 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());
- }
- }
|