DragonX compatibility: crash fixes, reorg detection, server failover, sync perf
- Fix Rust FFI panics with catch_unwind wrappers and safe CString handling - Handle poisoned mutex/RwLock from prior panics instead of crashing - Add stuck sync detection (10s stall threshold) and chain reorg user prompt - Add "Skip Verification" button to seed phrase wizard - Update payment URIs from hush: to drgx: - Update branding strings throughout UI - Add all 6 lite servers (lite, lite1-5.dragonx.is) with random selection - Add server connectivity probing to skip unreachable servers - Reuse Tokio runtime across block fetch batches to reduce sync overhead - Update Cargo.lock dependencies
This commit is contained in:
@@ -1,42 +1,42 @@
|
||||
#!/usr/bin/perl
|
||||
# Copyright (c) 2016-2024 The Hush developers
|
||||
# Distributed under the GPLv3 software license, see the accompanying
|
||||
# file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use autodie;
|
||||
use Data::Dumper;
|
||||
my ($find,$replace,@files) = @ARGV;
|
||||
|
||||
usage() unless $find && defined $replace;
|
||||
unless( @files ) {
|
||||
printf "No files to replace stuff!";
|
||||
exit 0;
|
||||
}
|
||||
|
||||
my $fh;
|
||||
print "Going to replace $find with $replace in " . scalar(@files) . " files\n";
|
||||
|
||||
for my $file (@files) {
|
||||
if (-d $file) {
|
||||
printf "Skipping directory $file\n";
|
||||
next;
|
||||
}
|
||||
unless ( -e $file ) {
|
||||
printf "$file does not exist!\n";
|
||||
next;
|
||||
}
|
||||
open $fh, '<', $file;
|
||||
my $content = join('',<$fh>);
|
||||
$content =~ s/\Q$find\E/$replace/g;
|
||||
close $fh;
|
||||
|
||||
open $fh, '>', $file;
|
||||
print $fh $content;
|
||||
close $fh;
|
||||
}
|
||||
|
||||
sub usage {
|
||||
die "$0 stringtofind stringtoreplace file [more files...]\n";
|
||||
}
|
||||
#!/usr/bin/perl
|
||||
# Copyright (c) 2016-2024 The Hush developers
|
||||
# Distributed under the GPLv3 software license, see the accompanying
|
||||
# file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use autodie;
|
||||
use Data::Dumper;
|
||||
my ($find,$replace,@files) = @ARGV;
|
||||
|
||||
usage() unless $find && defined $replace;
|
||||
unless( @files ) {
|
||||
printf "No files to replace stuff!";
|
||||
exit 0;
|
||||
}
|
||||
|
||||
my $fh;
|
||||
print "Going to replace $find with $replace in " . scalar(@files) . " files\n";
|
||||
|
||||
for my $file (@files) {
|
||||
if (-d $file) {
|
||||
printf "Skipping directory $file\n";
|
||||
next;
|
||||
}
|
||||
unless ( -e $file ) {
|
||||
printf "$file does not exist!\n";
|
||||
next;
|
||||
}
|
||||
open $fh, '<', $file;
|
||||
my $content = join('',<$fh>);
|
||||
$content =~ s/\Q$find\E/$replace/g;
|
||||
close $fh;
|
||||
|
||||
open $fh, '>', $file;
|
||||
print $fh $content;
|
||||
close $fh;
|
||||
}
|
||||
|
||||
sub usage {
|
||||
die "$0 stringtofind stringtoreplace file [more files...]\n";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user