Fixed a bug in mono-service.cs (#17095)
commit026d82fac3fe92162de68adda1f35c5d1b017023
authorJunil Um <powerumc@gmail.com>
Mon, 7 Oct 2019 14:28:40 +0000 (7 23:28 +0900)
committerAlexander Köplinger <alex.koeplinger@outlook.com>
Mon, 7 Oct 2019 14:28:40 +0000 (7 16:28 +0200)
treee6dded282373ab1134d1ba1280b50b78f82803ff
parent6861610662f19ee74f8f28ba00976b9f4641ee4b
Fixed a bug in mono-service.cs (#17095)

There is a bug in mono-service.cs file.

`setup.ApplicationBase = Environment.CurrentDirectory;`;

General `Environment.CurrentDirectory` does returns `Directory.GetCurrentDirectory()`.
And retuened value 'current path' without last character `/` but `AppDomain.CurrentDomain.BaseDirectory`;

It have a problem in my service application.

In my service application code,

```cs
using System;
using System.IO;

namespace BaseDirTest
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            var baseDir = AppDomain.CurrentDomain.BaseDirectory;
            Console.WriteLine($"baseDir={baseDir}");
            Console.WriteLine($"Path.GetDirectoryName(baseDir)={Path.GetDirectoryName(baseDir)}");
        }
    }
}
```

When I launch `mono app.exe`,
```bash
baseDir=/workspace/test/mono-owin-test/ConsoleApplication1/BaseDirTest/bin/Debug/
Path.GetDirectoryName(baseDir)=/workspace/test/mono-owin-test/ConsoleApplication1/BaseDirTest/bin/Debug
```

But when I launch `mono-service --no-daemon app.exe`,
```bash
eDir=/workspace/test/mono-owin-test/ConsoleApplication1/mono-service-umc/bin/Debug
Path.GetDirectoryName(baseDir)=/workspace/test/mono-owin-test/ConsoleApplication1/mono-service-umc/bin
```

Because my service application can not founds plugin directory and scans it.
mcs/tools/mono-service/mono-service.cs