- FreeBSD now supported.
- Much more work on the new C parser.
- API files update.
diff --git a/tools/winapi/output.pm b/tools/winapi/output.pm
index c6154ed..4993974 100644
--- a/tools/winapi/output.pm
+++ b/tools/winapi/output.pm
@@ -137,10 +137,17 @@
my $progress = \${$self->{PROGRESS}};
my $last_time = \${$self->{LAST_TIME}};
- $$progress = shift;
+ my $new_progress = shift;
+ if(defined($new_progress)) {
+ if(!defined($$progress) || $new_progress ne $$progress) {
+ $$progress = $new_progress;
- $self->update_progress;
- $$last_time = 0;
+ $self->update_progress;
+ $$last_time = 0;
+ }
+ } else {
+ return $$progress;
+ }
}
sub lazy_progress {
@@ -164,8 +171,10 @@
my $new_prefix = shift;
if(defined($new_prefix)) {
- $$prefix = $new_prefix;
- $$prefix_callback = undef;
+ if(!defined($$prefix) || $new_prefix ne $$prefix) {
+ $$prefix = $new_prefix;
+ $$prefix_callback = undef;
+ }
} else {
return $$prefix;
}