This is an automated email from the ASF dual-hosted git repository.

solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git


The following commit(s) were added to refs/heads/master by this push:
     new 31d0e34  [OPENMEETINGS-1859] reflow and kurento are updated
31d0e34 is described below

commit 31d0e3438fecf3f30757da853496aba57c454e8b
Author: Maxim Solodovnik <[email protected]>
AuthorDate: Wed Oct 10 00:15:08 2018 +0700

    [OPENMEETINGS-1859] reflow and kurento are updated
---
 openmeetings-core/pom.xml                          |   2 +-
 .../apache/openmeetings/web/room/kurento-utils.js  | 137 ++++++++++++---------
 pom.xml                                            |   2 +-
 3 files changed, 79 insertions(+), 62 deletions(-)

diff --git a/openmeetings-core/pom.xml b/openmeetings-core/pom.xml
index c734354..d7538d8 100644
--- a/openmeetings-core/pom.xml
+++ b/openmeetings-core/pom.xml
@@ -98,7 +98,7 @@
                <dependency>
                        <groupId>org.kurento</groupId>
                        <artifactId>kurento-client</artifactId>
-                       <version>6.7.1</version>
+                       <version>6.8.0</version>
                </dependency>
                <!-- Test dependencies -->
                <dependency>
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/kurento-utils.js
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/kurento-utils.js
index ed808d8..6fa9ea1 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/kurento-utils.js
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/kurento-utils.js
@@ -1,4 +1,4 @@
-(function(f){if(typeof exports==="object"&&typeof 
module!=="undefined"){module.exports=f()}else if(typeof 
define==="function"&&define.amd){define([],f)}else{var g;if(typeof 
window!=="undefined"){g=window}else if(typeof 
global!=="undefined"){g=global}else if(typeof 
self!=="undefined"){g=self}else{g=this}g.kurentoUtils = f()}})(function(){var 
define,module,exports;return (function(){function e(t,n,r){function 
s(o,u){if(!n[o]){if(!t[o]){var a=typeof 
require=="function"&&require;if(!u&&a)ret [...]
+(function(f){if(typeof exports==="object"&&typeof 
module!=="undefined"){module.exports=f()}else if(typeof 
define==="function"&&define.amd){define([],f)}else{var g;if(typeof 
window!=="undefined"){g=window}else if(typeof 
global!=="undefined"){g=global}else if(typeof 
self!=="undefined"){g=self}else{g=this}g.kurentoUtils = f()}})(function(){var 
define,module,exports;return (function(){function r(e,n,t){function 
o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof 
require&&require;if(!f&&c)ret [...]
 var freeice = require('freeice');
 var inherits = require('inherits');
 var UAParser = require('ua-parser-js');
@@ -912,7 +912,7 @@ var normalice = require('normalice');
 
 **/
 
-var freeice = module.exports = function(opts) {
+var freeice = function(opts) {
   // if a list of servers has been provided, then use it instead of defaults
   var servers = {
     stun: (opts || {}).stun || require('./stun.json'),
@@ -953,6 +953,7 @@ var freeice = module.exports = function(opts) {
   return selected;
 };
 
+module.exports = freeice;
 
},{"./stun.json":6,"./turn.json":7,"normalice":12}],6:[function(require,module,exports){
 module.exports=[
   "stun.l.google.com:19302",
@@ -967,8 +968,7 @@ module.exports=[
   "stun.voiparound.com",
   "stun.voipbuster.com",
   "stun.voipstunt.com",
-  "stun.voxgratia.org",
-  "stun.services.mozilla.com"
+  "stun.voxgratia.org"
 ]
 
 },{}],7:[function(require,module,exports){
@@ -2909,13 +2909,13 @@ exports.parse = function(sdp) {
 
 
 },{"sdp-transform":14}],21:[function(require,module,exports){
-/**
- * UAParser.js v0.7.17
+/*!
+ * UAParser.js v0.7.18
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
  * Copyright © 2012-2016 Faisal Salman <[email protected]>
- * Dual licensed under GPLv2 & MIT
+ * Dual licensed under GPLv2 or MIT
  */
 
 (function (window, undefined) {
@@ -2927,7 +2927,7 @@ exports.parse = function(sdp) {
     /////////////
 
 
-    var LIBVERSION  = '0.7.17',
+    var LIBVERSION  = '0.7.18',
         EMPTY       = '',
         UNKNOWN     = '?',
         FUNC_TYPE   = 'function',
@@ -3155,7 +3155,7 @@ exports.parse = function(sdp) {
 
             // Mixed
             /(kindle)\/([\w\.]+)/i,                                            
 // Kindle
-            /(lunascape|maxthon|netfront|jasmine|blazer)[\/\s]?([\w\.]+)*/i,
+            /(lunascape|maxthon|netfront|jasmine|blazer)[\/\s]?([\w\.]*)/i,
                                                                                
 // Lunascape/Maxthon/Netfront/Jasmine/Blazer
 
             // Trident based
@@ -3164,16 +3164,16 @@ exports.parse = function(sdp) {
             /(?:ms|\()(ie)\s([\w\.]+)/i,                                       
 // Internet Explorer
 
             // Webkit/KHTML based
-            /(rekonq)\/([\w\.]+)*/i,                                           
 // Rekonq
-            
/(chromium|flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser)\/([\w\.-]+)/i
+            /(rekonq)\/([\w\.]*)/i,                                            
 // Rekonq
+            
/(chromium|flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark)\/([\w\.-]+)/i
                                                                                
 // 
Chromium/Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser
             ], [NAME, VERSION], [
 
             /(trident).+rv[:\s]([\w\.]+).+like\sgecko/i                        
 // IE11
             ], [[NAME, 'IE'], VERSION], [
 
-            /(edge)\/((\d+)?[\w\.]+)/i                                         
 // Microsoft Edge
-            ], [NAME, VERSION], [
+            /(edge|edgios|edgea)\/((\d+)?[\w\.]+)/i                            
 // Microsoft Edge
+            ], [[NAME, 'Edge'], VERSION], [
 
             /(yabrowser)\/([\w\.]+)/i                                          
 // Yandex
             ], [[NAME, 'Yandex'], VERSION], [
@@ -3191,12 +3191,27 @@ exports.parse = function(sdp) {
             /(micromessenger)\/([\w\.]+)/i                                     
 // WeChat
             ], [[NAME, 'WeChat'], VERSION], [
 
+            /(qqbrowserlite)\/([\w\.]+)/i                                      
 // QQBrowserLite
+            ], [NAME, VERSION], [
+
             /(QQ)\/([\d\.]+)/i                                                 
 // QQ, aka ShouQ
             ], [NAME, VERSION], [
 
             /m?(qqbrowser)[\/\s]?([\w\.]+)/i                                   
 // QQBrowser
             ], [NAME, VERSION], [
 
+            /(BIDUBrowser)[\/\s]?([\w\.]+)/i                                   
 // Baidu Browser
+            ], [NAME, VERSION], [
+
+            /(2345Explorer)[\/\s]?([\w\.]+)/i                                  
 // 2345 Browser
+            ], [NAME, VERSION], [
+
+            /(MetaSr)[\/\s]?([\w\.]+)/i                                        
 // SouGouBrowser
+            ], [NAME], [
+
+            /(LBBROWSER)/i                                      // LieBao 
Browser
+            ], [NAME], [
+
             /xiaomi\/miuibrowser\/([\w\.]+)/i                                  
 // MIUI Browser
             ], [VERSION, [NAME, 'MIUI Browser']], [
 
@@ -3253,7 +3268,8 @@ exports.parse = function(sdp) {
             /(swiftfox)/i,                                                     
 // Swiftfox
             
/(icedragon|iceweasel|camino|chimera|fennec|maemo\sbrowser|minimo|conkeror)[\/\s]?([\w\.\+]+)/i,
                                                                                
 // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror
-            
/(firefox|seamonkey|k-meleon|icecat|iceape|firebird|phoenix)\/([\w\.-]+)/i,
+            
/(firefox|seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([\w\.-]+)$/i,
+
                                                                                
 // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
             /(mozilla)\/([\w\.]+).+rv\:.+gecko\/\d+/i,                         
 // Mozilla
 
@@ -3261,7 +3277,7 @@ exports.parse = function(sdp) {
             
/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir)[\/\s]?([\w\.]+)/i,
                                                                                
 // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir
             /(links)\s\(([\w\.]+)/i,                                           
 // Links
-            /(gobrowser)\/?([\w\.]+)*/i,                                       
 // GoBrowser
+            /(gobrowser)\/?([\w\.]*)/i,                                        
 // GoBrowser
             /(ice\s?browser)\/v?([\w\._]+)/i,                                  
 // ICE Browser
             /(mosaic)[\/\s]([\w\.]+)/i                                         
 // Mosaic
             ], [NAME, VERSION]
@@ -3423,9 +3439,9 @@ exports.parse = function(sdp) {
             /(dell)\s(strea[kpr\s\d]*[\dko])/i                                 
 // Dell Streak
             ], [VENDOR, MODEL, [TYPE, TABLET]], [
 
-            /(kf[A-z]+)\sbuild\/[\w\.]+.*silk\//i                              
 // Kindle Fire HD
+            /(kf[A-z]+)\sbuild\/.+silk\//i                                     
 // Kindle Fire HD
             ], [MODEL, [VENDOR, 'Amazon'], [TYPE, TABLET]], [
-            /(sd|kf)[0349hijorstuw]+\sbuild\/[\w\.]+.*silk\//i                 
 // Fire Phone
+            /(sd|kf)[0349hijorstuw]+\sbuild\/.+silk\//i                        
 // Fire Phone
             ], [[MODEL, mapper.str, maps.device.amazon.model], [VENDOR, 
'Amazon'], [TYPE, MOBILE]], [
 
             /\((ip[honed|\s\w*]+);.+(apple)/i                                  
 // iPod/iPhone
@@ -3434,7 +3450,7 @@ exports.parse = function(sdp) {
             ], [MODEL, [VENDOR, 'Apple'], [TYPE, MOBILE]], [
 
             /(blackberry)[\s-]?(\w+)/i,                                        
 // BlackBerry
-            
/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[\s_-]?([\w-]+)*/i,
+            
/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[\s_-]?([\w-]*)/i,
                                                                                
 // BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron
             /(hp)\s([\w\s]+\w)/i,                                              
 // HP iPAQ
             /(asus)-?(\w+)/i                                                   
 // Asus
@@ -3468,8 +3484,8 @@ exports.parse = function(sdp) {
             ], [VENDOR, MODEL, [TYPE, TABLET]], [
 
             /(htc)[;_\s-]+([\w\s]+(?=\))|\w+)*/i,                              
 // HTC
-            /(zte)-(\w+)*/i,                                                   
 // ZTE
-            
/(alcatel|geeksphone|lenovo|nexian|panasonic|(?=;\s)sony)[_\s-]?([\w-]+)*/i
+            /(zte)-(\w*)/i,                                                    
 // ZTE
+            
/(alcatel|geeksphone|lenovo|nexian|panasonic|(?=;\s)sony)[_\s-]?([\w-]*)/i
                                                                                
 // Alcatel/GeeksPhone/Lenovo/Nexian/Panasonic/Sony
             ], [VENDOR, [MODEL, /_/g, ' '], [TYPE, MOBILE]], [
 
@@ -3489,8 +3505,8 @@ exports.parse = function(sdp) {
             ], [[MODEL, /\./g, ' '], [VENDOR, 'Microsoft'], [TYPE, MOBILE]], [
 
                                                                                
 // Motorola
-            
/\s(milestone|droid(?:[2-4x]|\s(?:bionic|x2|pro|razr))?(:?\s4g)?)[\w\s]+build\//i,
-            /mot[\s-]?(\w+)*/i,
+            
/\s(milestone|droid(?:[2-4x]|\s(?:bionic|x2|pro|razr))?:?(\s4g)?)[\w\s]+build\//i,
+            /mot[\s-]?(\w*)/i,
             /(XT\d{3,4}) build\//i,
             /(nexus\s6)/i
             ], [MODEL, [VENDOR, 'Motorola'], [TYPE, MOBILE]], [
@@ -3512,15 +3528,15 @@ exports.parse = function(sdp) {
             /smart-tv.+(samsung)/i
             ], [VENDOR, [TYPE, SMARTTV], MODEL], [
             /((s[cgp]h-\w+|gt-\w+|galaxy\snexus|sm-\w[\w\d]+))/i,
-            /(sam[sung]*)[\s-]*(\w+-?[\w-]*)*/i,
+            /(sam[sung]*)[\s-]*(\w+-?[\w-]*)/i,
             /sec-((sgh\w+))/i
             ], [[VENDOR, 'Samsung'], MODEL, [TYPE, MOBILE]], [
 
-            /sie-(\w+)*/i                                                      
 // Siemens
+            /sie-(\w*)/i                                                       
 // Siemens
             ], [MODEL, [VENDOR, 'Siemens'], [TYPE, MOBILE]], [
 
             /(maemo|nokia).*(n900|lumia\s\d+)/i,                               
 // Nokia
-            /(nokia)[\s_-]?([\w-]+)*/i
+            /(nokia)[\s_-]?([\w-]*)/i
             ], [[VENDOR, 'Nokia'], MODEL, [TYPE, MOBILE]], [
 
             /android\s3\.[\s\w;-]{10}(a\d{3})/i                                
 // Acer
@@ -3533,7 +3549,7 @@ exports.parse = function(sdp) {
             /(lg) netcast\.tv/i                                                
 // LG SmartTV
             ], [VENDOR, MODEL, [TYPE, SMARTTV]], [
             /(nexus\s[45])/i,                                                  
 // LG
-            /lg[e;\s\/-]+(\w+)*/i,
+            /lg[e;\s\/-]+(\w*)/i,
             /android.+lg(\-?[\d\w]+)\s+build/i
             ], [MODEL, [VENDOR, 'LG'], [TYPE, MOBILE]], [
 
@@ -3561,23 +3577,24 @@ exports.parse = function(sdp) {
             /android.+;\s(pixel xl|pixel)\s/i                                  
 // Google Pixel
             ], [MODEL, [VENDOR, 'Google'], [TYPE, MOBILE]], [
 
-            /android.+(\w+)\s+build\/hm\1/i,                                   
 // Xiaomi Hongmi 'numeric' models
+            /android.+;\s(\w+)\s+build\/hm\1/i,                                
 // Xiaomi Hongmi 'numeric' models
             /android.+(hm[\s\-_]*note?[\s_]*(?:\d\w)?)\s+build/i,              
 // Xiaomi Hongmi
-            /android.+(mi[\s\-_]*(?:one|one[\s_]plus|note 
lte)?[\s_]*(?:\d\w)?)\s+build/i,    // Xiaomi Mi
-            /android.+(redmi[\s\-_]*(?:note)?(?:[\s_]*[\w\s]+)?)\s+build/i     
 // Redmi Phones
+            /android.+(mi[\s\-_]*(?:one|one[\s_]plus|note 
lte)?[\s_]*(?:\d?\w?)[\s_]*(?:plus)?)\s+build/i,    // Xiaomi Mi
+            /android.+(redmi[\s\-_]*(?:note)?(?:[\s_]*[\w\s]+))\s+build/i      
 // Redmi Phones
             ], [[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, MOBILE]], [
-            /android.+(mi[\s\-_]*(?:pad)?(?:[\s_]*[\w\s]+)?)\s+build/i         
 // Mi Pad tablets
+            /android.+(mi[\s\-_]*(?:pad)(?:[\s_]*[\w\s]+))\s+build/i           
 // Mi Pad tablets
             ],[[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, TABLET]], [
             /android.+;\s(m[1-5]\snote)\sbuild/i                               
 // Meizu Tablet
             ], [MODEL, [VENDOR, 'Meizu'], [TYPE, TABLET]], [
 
-            /android.+a000(1)\s+build/i                                        
 // OnePlus
+            /android.+a000(1)\s+build/i,                                       
 // OnePlus
+            /android.+oneplus\s(a\d{4})\s+build/i
             ], [MODEL, [VENDOR, 'OnePlus'], [TYPE, MOBILE]], [
 
             /android.+[;\/]\s*(RCT[\d\w]+)\s+build/i                           
 // RCA Tablets
             ], [MODEL, [VENDOR, 'RCA'], [TYPE, TABLET]], [
 
-            /android.+[;\/]\s*(Venue[\d\s]*)\s+build/i                         
 // Dell Venue Tablets
+            /android.+[;\/\s]+(Venue[\d\s]{2,7})\s+build/i                     
 // Dell Venue Tablets
             ], [MODEL, [VENDOR, 'Dell'], [TYPE, TABLET]], [
 
             /android.+[;\/]\s*(Q[T|M][\d\w]+)\s+build/i                        
 // Verizon Tablet
@@ -3589,8 +3606,8 @@ exports.parse = function(sdp) {
             /android.+[;\/]\s+(TM\d{3}.*\b)\s+build/i                          
 // Barnes & Noble Tablet
             ], [MODEL, [VENDOR, 'NuVision'], [TYPE, TABLET]], [
 
-            /android.+[;\/]\s*(zte)?.+(k\d{2})\s+build/i                       
 // ZTE K Series Tablet
-            ], [[VENDOR, 'ZTE'], MODEL, [TYPE, TABLET]], [
+            /android.+;\s(k88)\sbuild/i                                        
 // ZTE K Series Tablet
+            ], [MODEL, [VENDOR, 'ZTE'], [TYPE, TABLET]], [
 
             /android.+[;\/]\s*(gen\d{3})\s+build.*49h/i                        
 // Swiss GEN Mobile
             ], [MODEL, [VENDOR, 'Swiss'], [TYPE, MOBILE]], [
@@ -3601,26 +3618,26 @@ exports.parse = function(sdp) {
             /android.+[;\/]\s*((Zeki)?TB.*\b)\s+build/i                        
 // Zeki Tablets
             ], [MODEL, [VENDOR, 'Zeki'], [TYPE, TABLET]], [
 
-            /(android).+[;\/]\s+([YR]\d{2}x?.*)\s+build/i,
-            /android.+[;\/]\s+(Dragon[\-\s]+Touch\s+|DT)(.+)\s+build/i         
 // Dragon Touch Tablet
+            /(android).+[;\/]\s+([YR]\d{2})\s+build/i,
+            /android.+[;\/]\s+(Dragon[\-\s]+Touch\s+|DT)(\w{5})\sbuild/i       
 // Dragon Touch Tablet
             ], [[VENDOR, 'Dragon Touch'], MODEL, [TYPE, TABLET]], [
 
-            /android.+[;\/]\s*(NS-?.+)\s+build/i                               
 // Insignia Tablets
+            /android.+[;\/]\s*(NS-?\w{0,9})\sbuild/i                           
 // Insignia Tablets
             ], [MODEL, [VENDOR, 'Insignia'], [TYPE, TABLET]], [
 
-            /android.+[;\/]\s*((NX|Next)-?.+)\s+build/i                        
 // NextBook Tablets
+            /android.+[;\/]\s*((NX|Next)-?\w{0,9})\s+build/i                   
 // NextBook Tablets
             ], [MODEL, [VENDOR, 'NextBook'], [TYPE, TABLET]], [
 
-            
/android.+[;\/]\s*(Xtreme\_?)?(V(1[045]|2[015]|30|40|60|7[05]|90))\s+build/i
+            
/android.+[;\/]\s*(Xtreme\_)?(V(1[045]|2[015]|30|40|60|7[05]|90))\s+build/i
             ], [[VENDOR, 'Voice'], MODEL, [TYPE, MOBILE]], [                   
 // Voice Xtreme Phones
 
-            /android.+[;\/]\s*(LVTEL\-?)?(V1[12])\s+build/i                    
 // LvTel Phones
+            /android.+[;\/]\s*(LVTEL\-)?(V1[12])\s+build/i                     
// LvTel Phones
             ], [[VENDOR, 'LvTel'], MODEL, [TYPE, MOBILE]], [
 
             /android.+[;\/]\s*(V(100MD|700NA|7011|917G).*\b)\s+build/i         
 // Envizen Tablets
             ], [MODEL, [VENDOR, 'Envizen'], [TYPE, TABLET]], [
 
-            /android.+[;\/]\s*(Le[\s\-]+Pan)[\s\-]+(.*\b)\s+build/i            
 // Le Pan Tablets
+            /android.+[;\/]\s*(Le[\s\-]+Pan)[\s\-]+(\w{1,9})\s+build/i         
 // Le Pan Tablets
             ], [VENDOR, MODEL, [TYPE, TABLET]], [
 
             /android.+[;\/]\s*(Trio[\s\-]*.*)\s+build/i                        
 // MachSpeed Tablets
@@ -3635,14 +3652,14 @@ exports.parse = function(sdp) {
             /android.+(KS(.+))\s+build/i                                       
 // Amazon Kindle Tablets
             ], [MODEL, [VENDOR, 'Amazon'], [TYPE, TABLET]], [
 
-            /android.+(Gigaset)[\s\-]+(Q.+)\s+build/i                          
 // Gigaset Tablets
+            /android.+(Gigaset)[\s\-]+(Q\w{1,9})\s+build/i                     
 // Gigaset Tablets
             ], [VENDOR, MODEL, [TYPE, TABLET]], [
 
             /\s(tablet|tab)[;\/]/i,                                            
 // Unidentifiable Tablet
             /\s(mobile)(?:[;\/]|\ssafari)/i                                    
 // Unidentifiable Mobile
             ], [[TYPE, util.lowerize], VENDOR, MODEL], [
 
-            /(android.+)[;\/].+build/i                                         
 // Generic Android Device
+            /(android[\w\.\s\-]{0,9});.+build/i                                
 // Generic Android Device
             ], [MODEL, [VENDOR, 'Generic']]
 
 
@@ -3709,7 +3726,7 @@ exports.parse = function(sdp) {
             /(icab)[\/\s]([23]\.[\d\.]+)/i                                     
 // iCab
             ], [NAME, VERSION], [
 
-            /rv\:([\w\.]+).*(gecko)/i                                          
 // Gecko
+            /rv\:([\w\.]{1,9}).+(gecko)/i                                      
 // Gecko
             ], [VERSION, NAME]
         ],
 
@@ -3719,7 +3736,7 @@ exports.parse = function(sdp) {
             /microsoft\s(windows)\s(vista|xp)/i                                
 // Windows (iTunes)
             ], [NAME, VERSION], [
             /(windows)\snt\s6\.2;\s(arm)/i,                                    
 // Windows RT
-            /(windows\sphone(?:\sos)*)[\s\/]?([\d\.\s]+\w)*/i,                 
 // Windows Phone
+            /(windows\sphone(?:\sos)*)[\s\/]?([\d\.\s\w]*)/i,                  
 // Windows Phone
             /(windows\smobile|windows)[\s\/]?([ntce\d\.\s]+\w)/i
             ], [NAME, [VERSION, mapper.str, maps.os.windows.version]], [
             /(win(?=3|9|n)|win\s9x\s)([nt\d\.]+)/i
@@ -3728,13 +3745,13 @@ exports.parse = function(sdp) {
             // Mobile/Embedded OS
             /\((bb)(10);/i                                                     
 // BlackBerry 10
             ], [[NAME, 'BlackBerry'], VERSION], [
-            /(blackberry)\w*\/?([\w\.]+)*/i,                                   
 // Blackberry
+            /(blackberry)\w*\/?([\w\.]*)/i,                                    
 // Blackberry
             /(tizen)[\/\s]([\w\.]+)/i,                                         
 // Tizen
-            
/(android|webos|palm\sos|qnx|bada|rim\stablet\sos|meego|contiki)[\/\s-]?([\w\.]+)*/i,
+            
/(android|webos|palm\sos|qnx|bada|rim\stablet\sos|meego|contiki)[\/\s-]?([\w\.]*)/i,
                                                                                
 // Android/WebOS/Palm/QNX/Bada/RIM/MeeGo/Contiki
             /linux;.+(sailfish);/i                                             
 // Sailfish OS
             ], [NAME, VERSION], [
-            /(symbian\s?os|symbos|s60(?=;))[\/\s-]?([\w\.]+)*/i                
 // Symbian
+            /(symbian\s?os|symbos|s60(?=;))[\/\s-]?([\w\.]*)/i                 
 // Symbian
             ], [[NAME, 'Symbian'], VERSION], [
             /\((series40);/i                                                   
 // Series 40
             ], [NAME], [
@@ -3745,43 +3762,43 @@ exports.parse = function(sdp) {
             /(nintendo|playstation)\s([wids34portablevu]+)/i,                  
 // Nintendo/Playstation
 
             // GNU/Linux based
-            /(mint)[\/\s\(]?(\w+)*/i,                                          
 // Mint
+            /(mint)[\/\s\(]?(\w*)/i,                                           
 // Mint
             /(mageia|vectorlinux)[;\s]/i,                                      
 // Mageia/VectorLinux
-            
/(joli|[kxln]?ubuntu|debian|[open]*suse|gentoo|(?=\s)arch|slackware|fedora|mandriva|centos|pclinuxos|redhat|zenwalk|linpus)[\/\s-]?(?!chrom)([\w\.-]+)*/i,
+            
/(joli|[kxln]?ubuntu|debian|suse|opensuse|gentoo|(?=\s)arch|slackware|fedora|mandriva|centos|pclinuxos|redhat|zenwalk|linpus)[\/\s-]?(?!chrom)([\w\.-]*)/i,
                                                                                
 // Joli/Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware
                                                                                
 // Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus
-            /(hurd|linux)\s?([\w\.]+)*/i,                                      
 // Hurd/Linux
-            /(gnu)\s?([\w\.]+)*/i                                              
 // GNU
+            /(hurd|linux)\s?([\w\.]*)/i,                                       
 // Hurd/Linux
+            /(gnu)\s?([\w\.]*)/i                                               
 // GNU
             ], [NAME, VERSION], [
 
             /(cros)\s[\w]+\s([\w\.]+\w)/i                                      
 // Chromium OS
             ], [[NAME, 'Chromium OS'], VERSION],[
 
             // Solaris
-            /(sunos)\s?([\w\.]+\d)*/i                                          
 // Solaris
+            /(sunos)\s?([\w\.\d]*)/i                                           
 // Solaris
             ], [[NAME, 'Solaris'], VERSION], [
 
             // BSD based
-            /\s([frentopc-]{0,4}bsd|dragonfly)\s?([\w\.]+)*/i                  
 // FreeBSD/NetBSD/OpenBSD/PC-BSD/DragonFly
+            /\s([frentopc-]{0,4}bsd|dragonfly)\s?([\w\.]*)/i                   
 // FreeBSD/NetBSD/OpenBSD/PC-BSD/DragonFly
             ], [NAME, VERSION],[
 
-            /(haiku)\s(\w+)/i                                                  
// Haiku
+            /(haiku)\s(\w+)/i                                                  
 // Haiku
             ], [NAME, VERSION],[
 
             /cfnetwork\/.+darwin/i,
-            /ip[honead]+(?:.*os\s([\w]+)\slike\smac|;\sopera)/i                
 // iOS
+            /ip[honead]{2,4}(?:.*os\s([\w]+)\slike\smac|;\sopera)/i            
 // iOS
             ], [[VERSION, /_/g, '.'], [NAME, 'iOS']], [
 
-            /(mac\sos\sx)\s?([\w\s\.]+\w)*/i,
+            /(mac\sos\sx)\s?([\w\s\.]*)/i,
             /(macintosh|mac(?=_powerpc)\s)/i                                   
 // Mac OS
             ], [[NAME, 'Mac OS'], [VERSION, /_/g, '.']], [
 
             // Other
-            /((?:open)?solaris)[\/\s-]?([\w\.]+)*/i,                           
 // Solaris
-            /(aix)\s((\d)(?=\.|\)|\s)[\w\.]*)*/i,                              
 // AIX
+            /((?:open)?solaris)[\/\s-]?([\w\.]*)/i,                            
 // Solaris
+            /(aix)\s((\d)(?=\.|\)|\s)[\w\.])*/i,                               
 // AIX
             /(plan\s9|minix|beos|os\/2|amigaos|morphos|risc\sos|openvms)/i,
                                                                                
 // Plan9/Minix/BeOS/OS2/AmigaOS/MorphOS/RISCOS/OpenVMS
-            /(unix)\s?([\w\.]+)*/i                                             
 // UNIX
+            /(unix)\s?([\w\.]*)/i                                              
 // UNIX
             ], [NAME, VERSION]
         ]
     };
diff --git a/pom.xml b/pom.xml
index 1acafc8..68f965a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -48,7 +48,7 @@
                
<checksum-maven-plugin.version>1.6</checksum-maven-plugin.version>
                <maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
                
<license-maven-plugin.version>1.16</license-maven-plugin.version>
-               <reflow-maven-skin.version>1.4.0</reflow-maven-skin.version>
+               <reflow-maven-skin.version>1.4.2</reflow-maven-skin.version>
                
<maven-compiler-plugin.version>3.8.0</maven-compiler-plugin.version>
                
<maven-project-info-reports-plugin.version>3.0.0</maven-project-info-reports-plugin.version>
                <maven-jar-plugin.version>3.1.0</maven-jar-plugin.version>

Reply via email to