@ -27,6 +27,7 @@ using ILogger = Microsoft.Extensions.Logging.ILogger;
namespace Jellyfin.Server
{
using CommandLine ;
using System.Text.RegularExpressions ;
public static class Program
{
@ -37,6 +38,18 @@ namespace Jellyfin.Server
public static async Task Main ( string [ ] args )
{
// For backwards compatibility.
// Modify any input arguments now which start with single-hyphen to POSIX standard
// double-hyphen to allow parsing by CommandLineParser package.
var pattern = @"^(-[^-\s]{2})" ; // Match -xx, not -x, not --xx, not xx
var substitution = @"-$1" ; // Prepend with additional single-hyphen
var regex = new Regex ( pattern ) ;
for ( var i = 0 ; i < args . Length ; i + + )
{
args [ i ] = regex . Replace ( args [ i ] , substitution ) ;
}
// For CommandLine package, change default behaviour to output errors to stdout (instead of stderr)
var parser = new Parser ( config = > config . HelpWriter = Console . Out ) ;
@ -139,9 +152,9 @@ namespace Jellyfin.Server
string programDataPath = Environment . GetEnvironmentVariable ( "JELLYFIN_DATA_PATH" ) ;
if ( string . IsNullOrEmpty ( programDataPath ) )
{
if ( options . Path Program Data ! = null )
if ( options . Path Data ! = null )
{
programDataPath = options . Path Program Data;
programDataPath = options . Path Data;
}
else
{