Merge pull request #1825 from hbons/fixes/cleanup

Fixes/cleanup
This commit is contained in:
Hylke Bons 2018-03-14 16:29:38 +00:00 committed by GitHub
commit 33c506e8be
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 59 additions and 45 deletions

View file

@ -73,7 +73,8 @@ namespace SparkleShare {
else
UpdateLabelEvent ("✓ You are running the latest version");
} catch {
} catch (Exception e) {
Logger.LogInfo ("UI", "Failed to download " + uri , e);
UpdateLabelEvent ("Couldnt check for updates\t");
}
}

View file

@ -214,11 +214,7 @@ namespace SparkleShare {
Logger.LogInfo ("Environment", "SparkleShare " + version);
Logger.LogInfo ("Environment", "Git LFS " + Sparkles.Git.GitCommand.GitLFSVersion);
Logger.LogInfo ("Environment", "Git " + Sparkles.Git.GitCommand.GitVersion);
if (InstallationInfo.OperatingSystem == OS.Mac)
Logger.LogInfo ("Environment", InstallationInfo.MacOSVersion ());
else
Logger.LogInfo ("Environment", InstallationInfo.OperatingSystem + " (" + Environment.OSVersion + ")");
Logger.LogInfo ("Environment", InstallationInfo.OperatingSystem + " " + InstallationInfo.OperatingSystemVersion);
UserAuthenticationInfo = new SSHAuthenticationInfo ();
SSHAuthenticationInfo.DefaultAuthenticationInfo = UserAuthenticationInfo;

View file

@ -346,8 +346,8 @@ namespace SparkleShare {
Logger.LogInfo ("Controller", "Added preset for " + uri.Host);
}
} catch {
Logger.LogInfo ("Controller", "Failed adding preset for " + uri.Host);
} catch (Exception e) {
Logger.LogInfo ("Controller", "Failed adding preset for " + uri.Host, e);
}
}

View file

@ -36,7 +36,7 @@ namespace SparkleShare {
public static void Main (string [] args)
{
if (args.Length != 0 && (args [0].Equals ("help") || args [0].Equals ("version")) &&
InstallationInfo.OperatingSystem != OS.Mac &&
InstallationInfo.OperatingSystem != OS.macOS &&
InstallationInfo.OperatingSystem != OS.Windows) {
string n = Environment.NewLine;

View file

@ -19,6 +19,7 @@ using System;
using System.IO;
using Gtk;
using Sparkles;
namespace SparkleShare {
@ -35,7 +36,9 @@ namespace SparkleShare {
try {
return icon_theme.LoadIcon (name, size, IconLookupFlags.GenericFallback);
} catch {
} catch (Exception e) {
Logger.LogInfo ("UI", "Failed to load icon " + name + " of size " + size, e);
try {
return icon_theme.LoadIcon ("gtk-missing-image", size, IconLookupFlags.GenericFallback);

View file

@ -25,6 +25,7 @@ configure_file(
output: 'sparkleshare',
configuration: configuration, install_dir: get_option('bindir'))
# .desktop and .appdata files
apps_dir = join_paths(get_option('prefix'), 'share', 'applications')
install_data(sources: 'org.sparkleshare.SparkleShare.desktop', install_dir: apps_dir)
@ -56,6 +57,6 @@ sparkleshare = executable('SparkleShare',
install: true,
install_dir: install_dir)
subdir('Images')
subdir('Images/icons')

View file

@ -28,7 +28,7 @@ namespace Sparkles {
private static Lazy<Configuration> ConfigLazy = new Lazy<Configuration> (() => {
string app_data_path = Environment.GetFolderPath (Environment.SpecialFolder.ApplicationData);
if (InstallationInfo.OperatingSystem != OS.Windows && InstallationInfo.OperatingSystem != OS.Mac)
if (InstallationInfo.OperatingSystem != OS.Windows && InstallationInfo.OperatingSystem != OS.macOS)
app_data_path = Path.Combine (Environment.GetFolderPath (Environment.SpecialFolder.Personal), ".config");
string config_path = Path.Combine (app_data_path, "org.sparkleshare.SparkleShare");

View file

@ -420,7 +420,7 @@ namespace Sparkles.Git {
string smudge_command;
string clean_command;
if (InstallationInfo.OperatingSystem == OS.Mac || InstallationInfo.OperatingSystem == OS.Windows) {
if (InstallationInfo.OperatingSystem == OS.macOS || InstallationInfo.OperatingSystem == OS.Windows) {
smudge_command = "env GIT_SSH_COMMAND='" + GIT_SSH_COMMAND + "' " +
Path.Combine (Configuration.DefaultConfiguration.BinPath, "git-lfs").Replace ("\\", "/") + " smudge %f";

View file

@ -102,7 +102,8 @@ namespace Sparkles.Git {
string size = File.ReadAllText (file_path);
return double.Parse (size);
} catch {
} catch (Exception e) {
Logger.LogInfo ("Git", Name + " | Failed to parse " + file_path, e);
return 0;
}
}
@ -117,7 +118,8 @@ namespace Sparkles.Git {
string size = File.ReadAllText (file_path);
return double.Parse (size);
} catch {
} catch (Exception e) {
Logger.LogInfo ("Git", Name + " | Failed to parse " + file_path, e);
return 0;
}
}
@ -207,7 +209,7 @@ namespace Sparkles.Git {
string pre_push_hook_content;
// The pre-push hook may have been changed by Git LFS, overwrite it to use our own configuration
if (InstallationInfo.OperatingSystem == OS.Mac || InstallationInfo.OperatingSystem == OS.Windows) {
if (InstallationInfo.OperatingSystem == OS.macOS || InstallationInfo.OperatingSystem == OS.Windows) {
pre_push_hook_content =
"#!/bin/sh" + Environment.NewLine +
"env GIT_SSH_COMMAND='" + GitCommand.FormatGitSSHCommand (auth_info) + "' " +
@ -638,16 +640,15 @@ namespace Sparkles.Git {
try {
File.Move (local_file_path, target_file_path);
} catch {
Logger.LogInfo ("Git",
Name + " | Could not move \"" + local_file_path + "\" to \"" + target_file_path + "\"");
} catch (Exception e) {
string message = string.Format ("Failed to move \"{0}\" to \"{1}\"", local_file_path, target_file_path);
Logger.LogInfo ("Git", Name + " | " + message, e);
}
// ...and restore the most recent revision
git = new GitCommand (LocalPath, "checkout " + CurrentRevision + " \"" + path + "\"");
git.StartAndWaitForExit ();
if (target_file_path.StartsWith (LocalPath))
new Thread (() => OnFileActivity (null)).Start ();
}
@ -966,8 +967,8 @@ namespace Sparkles.Git {
File.WriteAllText (Path.Combine (path, ".empty"), "I'm a folder!");
File.SetAttributes (Path.Combine (path, ".empty"), FileAttributes.Hidden);
} catch {
Logger.LogInfo ("Git", Name + " | Failed adding empty folder " + path);
} catch (Exception e) {
Logger.LogInfo ("Git", Name + " | Failed adding empty folder " + path, e);
}
}
}

View file

@ -22,7 +22,7 @@ namespace Sparkles {
public enum OS {
Unknown,
Mac,
macOS,
Windows,
Ubuntu,
GNOME
@ -49,7 +49,7 @@ namespace Sparkles {
// Environment.OSVersion.Platform.PlatformID.MacOSX is broken in Mono
// for historical reasons, so check manually
if (output.StartsWith ("Darwin", StringComparison.InvariantCulture)) {
operating_system = OS.Mac;
operating_system = OS.macOS;
} else if (output.Contains ("Ubuntu")) {
operating_system = OS.Ubuntu;
@ -63,29 +63,35 @@ namespace Sparkles {
}
public static string MacOSVersion ()
{
var uname = new Command ("sw_vers", "-productVersion", false);
string output = uname.StartAndReadStandardOutput ();
string version = output;
public static string OperatingSystemVersion {
get {
if (OperatingSystem == OS.macOS) {
var uname = new Command ("sw_vers", "-productVersion", false);
string output = uname.StartAndReadStandardOutput ();
string version = output;
// Parse the version number between the periods (e.g. "10.12.1" -> 12)
output = output.Substring (output.IndexOf (".") + 1);
output = output.Substring (0, output.LastIndexOf ("."));
// Parse the version number between the periods (e.g. "10.12.1" -> 12)
output = output.Substring (output.IndexOf (".") + 1);
output = output.Substring (0, output.LastIndexOf ("."));
string release = "Unreleased Version";
string release = "Unreleased Version";
switch (int.Parse (output)) {
case 7: release = "Lion"; break;
case 8: release = "Mountain Lion"; break;
case 9: release = "Mavericks"; break;
case 10: release = "Yosemite"; break;
case 11: release = "El Capitan"; break;
case 12: release = "Sierra"; break;
case 13: release = "High Sierra"; break;
switch (int.Parse (output)) {
case 7: release = "Lion"; break;
case 8: release = "Mountain Lion"; break;
case 9: release = "Mavericks"; break;
case 10: release = "Yosemite"; break;
case 11: release = "El Capitan"; break;
case 12: release = "Sierra"; break;
case 13: release = "High Sierra"; break;
}
return string.Format ("{0} ({1})", version, release);
}
string os_version = Environment.OSVersion.ToString ();
return string.Format ("({0})", os_version.Replace ("Unix", "Linux"));
}
return string.Format ("macOS {0} ({1})", version, release);
}

View file

@ -49,8 +49,14 @@ namespace Sparkles {
Console.WriteLine (line);
lock (log_writer_lock) {
log_writer.WriteLine (line);
log_writer.Flush ();
try {
log_writer.WriteLine (line);
log_writer.Flush ();
} catch (Exception e) {
Console.WriteLine (string.Format ("Could not write to log {0}: {1} {2}",
(log_writer.BaseStream as FileStream).Name, e.Message, e.StackTrace));
}
}
}