[bugfix] handle multi ? urls

To use 'concat' can create a new array indeed, but why to need a new array? And that, the new array isn't used by you to the codes after it. So, the variable `retSegs` value in return statement is still the old value, that is to say,  the array length of the variable `retSegs` is still 1.   

If you want to use 'concat' function,  an assignment statement is required, like `retSegs = retSegs.concat(lastSegs)`, because of the example below.
```
var a = [1, 2];
var b = a.concat([3,4]); // to assign the variable 'b'.
console.log(a, b)
// output: [1, 2]  [1, 2, 3, 4]

var c = a.join('-');     // ! This is your case: 'a' doesn't been changed and is still old value.
var d = b.join('-');     // ! This is my meaning: new elements have been added into 'b'.
console.log(c, d);
// output: 1-2  1-2-3-4

/* expected result: 1-2-3-4, instead of: 1-2 */
```
So, I think that the code `retSegs.concat(lastSegs)` should be changed to `retSegs = retSegs.concat(lastSegs)`. Do you?