I see, I will change it back to RunGitCmd, since I am now observing in the
Thread Pool anyway.


2013/3/5 Janusz Białobrzewski <notifications@github.com>

> In Plugins/BackgroundFetch/BackgroundFetchPlugin.cs:
>
> > +        {
> > +            CancelBackgroundOperation();
> > +
> > +            int fetchInterval;
> > +            if (!int.TryParse(Settings.
> GetSetting("Fetch every (seconds) - set to 0 to disable"), out fetchInterval))
> > +                fetchInterval = 0;
> > +
> > +            var gitModule = currentGitUiCommands.GitModule;
> > +            if (fetchInterval > 0 && GitModule.IsValidGitWorkingDir(gitModule.GitWorkingDir))
> > +            {
> > +                cancellationToken =
> > +                    Observable.Timer(TimeSpan.FromSeconds(Math.Max(5, fetchInterval)))
> > +                              .SkipWhile(i => gitModule.IsRunningGitProcess())
> > +                              .Repeat()
> > +                              .ObserveOn(ThreadPoolScheduler.Instance)
> > +                              .Subscribe(i => gitModule.RunGitCmdAsync("fetch --all"));
>
> This doesn't run git command, because it is lazy evaluated IEnumerable.
> @KindDragon <https://github.com/KindDragon> it is kind of missleading.
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/gitextensions/gitextensions/pull/1669/files#r3249577>
> .
>