I use qvamps 0.98 and vamps 0.99.2 on Ubuntu 7.10 and run into an endless loop after pressing the "Copy!" button.
(This happens both with the version from the Ubuntu repository and with a manually compiled version.)
The endless loop seems to be entered when (or before) about 1,8 GB of DVD image data are written, it eats more and more memory.
In the protocol window, only the "Executing dvdauthor -x ..." line is displayed, no further line.
(Obviously there should be many output lines from dvdauthor; earlier versions on SuSE Linux 10.0 worked.)
(I assume something goes wrong causing the output buffer not to be flushed into the protocol window.)
When tracing (perl -d qvamps, with AutoTrace activated) the Perl script qvamps, this endless loop starts after some 100,000 executed lines of code. Here are the last lines of the trace output, starting from entering the "run_dvdauthor" function in DvdMaker.pm. The endless loop consists of the last 34 lines of the trace only, as indicated below:
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:256):
256: my $base_path = shift;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:257):
257: my $rm_temps = shift;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:259):
259: my $vamps_inj = "$base_path/vamps.inj";
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:261):
261: rmtree ("$base_path/image");
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:176):
176: my($roots, $verbose, $safe) = @_;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:177):
177: my(@files);
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:178):
178: my($count) = 0;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:179):
179: $verbose ||= 0;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:180):
180: $safe ||= 0;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:182):
182: if ( defined($roots) && length($roots) ) {
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:183):
183: $roots = [$roots] unless ref $roots;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:190):
190: my($root);
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:191):
191: foreach $root (@{$roots}) {
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:191):
191: foreach $root (@{$roots}) {
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:192):
192: if ($Is_MacOS) {
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:196):
196: $root =~ s#/\z##;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:198):
198: (undef, undef, my $rp) = lstat $root or next;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:282):
282: $count;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:262):
262: unlink ($vamps_inj);
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:263):
263: update_status (1);
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:417):
417: my $forced = shift;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:419):
419: my $elapsed = elapsed;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:420):
420: my $dst_space = dst_space;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:422):
422: return unless ($elapsed && $dst_space);
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:424):
424: $elapsed -> setText ($t_zero ->
425: addMSecs (clock -> elapsed ()) -> toString ("h:mm:ss"));
Qt::AutoLoad::CODE(0x86220a8)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x86220a8)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x86220a8)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:562):
562: my $count = scalar @_;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:563):
563: for my $i (0..$count-1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:564):
564: my @matching = argmatch(\@methodids, \@_, $i);
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:469):
469: my $methods = shift;
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:470):
470: my $args = shift;
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:471):
471: my $i = shift;
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:472):
472: my %match;
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:473):
473: my $argtype = getSVt($args->[$i]);
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:474):
474: for my $methix(0..$#$methods) {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:475):
475: my $method = $$methods[$methix];
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:476):
476: my $typename = getTypeNameOfArg($method, $i);
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:477):
477: if($argtype eq 'i') {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:486):
486: if($typename =~ /^(?:(?:const )?u?char\*|(?:const )?(?:(Q(C?)String)|QByteArray)[*&]?)$/) {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:475):
475: my $method = $$methods[$methix];
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:476):
476: my $typename = getTypeNameOfArg($method, $i);
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:477):
477: if($argtype eq 'i') {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:486):
486: if($typename =~ /^(?:(?:const )?u?char\*|(?:const )?(?:(Q(C?)String)|QByteArray)[*&]?)$/) {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:491):
491: $match{$method}[0] = defined $2 && $2 ? 1 : ( defined $1 ? 2 : 0 );
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:492):
492: $match{$method}[1] = $methix
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:521):
521: return sort { $match{$b}[0] <=> $match{$a}[0] or $match{$a}[1] <=> $match{$b}[1] } keys %match;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:565):
565: @methodids = @matching if @matching or $strictArgMatch;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:567):
567: do {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x8564304)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::AutoLoad::CODE(0x86220a8)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::base::ON_DESTROY(/usr/lib/perl5/Qt.pm:904):
904: sub Qt::base::ON_DESTROY { 0 };
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:427):
427: my $counter = counter - 1;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:429):
429: if ($forced || $counter == 0)
430: {
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:431):
431: $counter = 20;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:433):
433: $dst_space -> setText (sprintf "%d/%d MB",
434: dir_files_size (dst_dir) / 1024. / 1024., tgt_size);
DvdMaker::dir_files_size(/usr/local/share/qvamps/lib/DvdMaker.pm:443):
443: my $dir = shift;
DvdMaker::dir_files_size(/usr/local/share/qvamps/lib/DvdMaker.pm:445):
445: return 0 unless (opendir DH, $dir);
Qt::AutoLoad::CODE(0x8564304)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:437):
437: counter = $counter;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:265):
265: my $dvdauthor_xml = "$base_path/dvdauthor.xml";
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:266):
266: my $dvdauthor = read_setting ("/Dvdauthor/command");
QVamps::read_setting(/usr/local/share/qvamps/lib/QVamps.pm:174):
174: my $key = shift;
QVamps::read_setting(/usr/local/share/qvamps/lib/QVamps.pm:177):
177: my $ok;
QVamps::read_setting(/usr/local/share/qvamps/lib/QVamps.pm:178):
178: my $value = $settings -> readEntry ($key, undef, $ok);
Qt::AutoLoad::CODE(0x85c28d4)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
QVamps::read_setting(/usr/local/share/qvamps/lib/QVamps.pm:181):
181: return $value if ($ok);
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:267):
267: $dvdauthor = replace ($dvdauthor, { "x" => $dvdauthor_xml });
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:277):
277: my $str = shift;
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:278):
278: my %rep = %{shift ()};
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:278):
278: my %rep = %{shift ()};
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:280):
280: $rep {"%"} = "%";
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:282):
282: $str =~ s/%(.)/$rep{$1}/g;
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:284):
284: return $str;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:269):
269: my $rc = launch_sh_cmd (0, $dvdauthor);
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:143):
143: my $hilite = shift;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:144):
144: my $cmd = shift;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:146):
146: hilite_errors = $hilite;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:147):
147: my $lv = log_viewer;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:149):
149: $lv -> setColor (Qt::Color (0, 0, 0xff));
Qt::_internal::CODE(0x84b20cc)(/usr/lib/perl5/Qt.pm:464):
464: $class->new(@_);
Qt::base::new(/usr/lib/perl5/Qt.pm:8):
8: my $t = this;
Qt::base::new(/usr/lib/perl5/Qt.pm:9):
9: shift->NEW(@_);
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:451):
451: my $class = shift;
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:452):
452: $Qt::AutoLoad::AUTOLOAD = "$class\::$c";
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:453):
453: my $autoload = " $class\::_UTOLOAD";
454: {
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:455):
455: no warnings;
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:457):
457: setThis(bless &$autoload, " $class");
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:459):
459: setAllocated(this, 1);
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:460):
460: mapObject(this);
Qt::base::new(/usr/lib/perl5/Qt.pm:10):
10: my $ret = this;
Qt::base::new(/usr/lib/perl5/Qt.pm:11):
11: Qt::_internal::setThis($t);
Qt::base::new(/usr/lib/perl5/Qt.pm:12):
12: return $ret;
Qt::AutoLoad::CODE(0x861b6bc)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:549):
549: @methods = map { $_ . '#' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:549):
549: @methods = map { $_ . '#' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:531):
531: $t =~ s/^const\s+//;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:532):
532: $t =~ s/(?<=\w)[&*]$//;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:533):
533: return 0 unless classIsa($argtype, $t) != -1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x84b1f04)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::base::ON_DESTROY(/usr/lib/perl5/Qt.pm:904):
904: sub Qt::base::ON_DESTROY { 0 };
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:150):
150: $lv -> append (sprintf "%s \"%s\"\n\n", &tr ("Executing"), $cmd);
QVamps::trUtf8(/usr/local/share/qvamps/lib/QVamps.pm:460):
460: my $source = shift;
QVamps::trUtf8(/usr/local/share/qvamps/lib/QVamps.pm:461):
461: my $comment = shift;
QVamps::trUtf8(/usr/local/share/qvamps/lib/QVamps.pm:463):
463: my ($class_name) = caller;
QVamps::trUtf8(/usr/local/share/qvamps/lib/QVamps.pm:465):
465: return Qt::app () -> translate ($class_name, $source, $comment,
466: &Qt::Application::UnicodeUTF8);
Qt::AutoLoad::CODE(0x8482208)(/usr/lib/perl5/Qt.pm:428):
428: *{ $class . "::AUTOLOAD" } = sub{ &$closure };
Qt::AutoLoad::CODE(0x848267c)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::AutoLoad::CODE(0x861b6bc)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:151):
151: $lv -> setColor (default_color);
Qt::AutoLoad::CODE(0x861b6bc)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:153):
153: $cmd = "exec $cmd" unless ($cmd =~ /[|;]/);
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:155):
155: return launch ([ "/bin/sh", "-c", $cmd ]);
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:103):
103: my $args = shift;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:105):
105: my $proc = proc;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:107):
107: $proc -> setArguments ($args);
Qt::AutoLoad::CODE(0x85ab334)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:551):
551: @methods = map { $_ . '?' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:551):
551: @methods = map { $_ . '?' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:109):
109: unless ($proc -> start ())
110: {
Qt::AutoLoad::CODE(0x85ab334)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:117):
117: my $event_loop = Qt::Application::eventLoop ();
Qt::AutoLoad::CODE(0x8482208)(/usr/lib/perl5/Qt.pm:428):
428: *{ $class . "::AUTOLOAD" } = sub{ &$closure };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:119):
119: proc_running = 1;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:121):
121: while (proc_running)
122: {
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:123):
123: $event_loop -> processEvents (&Qt::EventLoop::WaitForMore);
Qt::AutoLoad::CODE(0x8504628)(/usr/lib/perl5/Qt.pm:428):
428: *{ $class . "::AUTOLOAD" } = sub{ &$closure };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x8504700)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::read_output(/usr/local/share/qvamps/lib/DvdMaker.pm:190):
190: my $proc = proc;
DvdMaker::read_output(/usr/local/share/qvamps/lib/DvdMaker.pm:192):
192: while (my $s = $proc -> readStdout ())
193: {
Qt::AutoLoad::CODE(0x85ab334)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
PS: This happens with and without the patch from the thread "qVamps crashes on hitting "Copy!"" applied.
PS: This happens with and without the patch against vamps 0.99.2 regarding "Premature EOF" applied.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
PPS: As expected, the problem does not occur if I switch the "Copy Tasks" to "1: Create XML control file for dvdauthor, menu program stream and a shell script to (re-)run these copy tasks" and then run the generated script "run_me" in a terminal window manually.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I use qvamps 0.98 and vamps 0.99.2 on Ubuntu 7.10 and run into an endless loop after pressing the "Copy!" button.
(This happens both with the version from the Ubuntu repository and with a manually compiled version.)
The endless loop seems to be entered when (or before) about 1,8 GB of DVD image data are written, it eats more and more memory.
In the protocol window, only the "Executing dvdauthor -x ..." line is displayed, no further line.
(Obviously there should be many output lines from dvdauthor; earlier versions on SuSE Linux 10.0 worked.)
(I assume something goes wrong causing the output buffer not to be flushed into the protocol window.)
When tracing (perl -d qvamps, with AutoTrace activated) the Perl script qvamps, this endless loop starts after some 100,000 executed lines of code. Here are the last lines of the trace output, starting from entering the "run_dvdauthor" function in DvdMaker.pm. The endless loop consists of the last 34 lines of the trace only, as indicated below:
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:256):
256: my $base_path = shift;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:257):
257: my $rm_temps = shift;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:259):
259: my $vamps_inj = "$base_path/vamps.inj";
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:261):
261: rmtree ("$base_path/image");
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:176):
176: my($roots, $verbose, $safe) = @_;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:177):
177: my(@files);
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:178):
178: my($count) = 0;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:179):
179: $verbose ||= 0;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:180):
180: $safe ||= 0;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:182):
182: if ( defined($roots) && length($roots) ) {
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:183):
183: $roots = [$roots] unless ref $roots;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:190):
190: my($root);
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:191):
191: foreach $root (@{$roots}) {
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:191):
191: foreach $root (@{$roots}) {
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:192):
192: if ($Is_MacOS) {
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:196):
196: $root =~ s#/\z##;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:198):
198: (undef, undef, my $rp) = lstat $root or next;
File::Path::rmtree(/usr/share/perl/5.8/File/Path.pm:282):
282: $count;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:262):
262: unlink ($vamps_inj);
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:263):
263: update_status (1);
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:417):
417: my $forced = shift;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:419):
419: my $elapsed = elapsed;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:420):
420: my $dst_space = dst_space;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:422):
422: return unless ($elapsed && $dst_space);
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:424):
424: $elapsed -> setText ($t_zero ->
425: addMSecs (clock -> elapsed ()) -> toString ("h:mm:ss"));
Qt::AutoLoad::CODE(0x86220a8)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x86220a8)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x86220a8)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:562):
562: my $count = scalar @_;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:563):
563: for my $i (0..$count-1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:564):
564: my @matching = argmatch(\@methodids, \@_, $i);
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:469):
469: my $methods = shift;
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:470):
470: my $args = shift;
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:471):
471: my $i = shift;
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:472):
472: my %match;
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:473):
473: my $argtype = getSVt($args->[$i]);
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:474):
474: for my $methix(0..$#$methods) {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:475):
475: my $method = $$methods[$methix];
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:476):
476: my $typename = getTypeNameOfArg($method, $i);
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:477):
477: if($argtype eq 'i') {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:486):
486: if($typename =~ /^(?:(?:const )?u?char\*|(?:const )?(?:(Q(C?)String)|QByteArray)[*&]?)$/) {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:475):
475: my $method = $$methods[$methix];
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:476):
476: my $typename = getTypeNameOfArg($method, $i);
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:477):
477: if($argtype eq 'i') {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:486):
486: if($typename =~ /^(?:(?:const )?u?char\*|(?:const )?(?:(Q(C?)String)|QByteArray)[*&]?)$/) {
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:491):
491: $match{$method}[0] = defined $2 && $2 ? 1 : ( defined $1 ? 2 : 0 );
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:492):
492: $match{$method}[1] = $methix
Qt::_internal::argmatch(/usr/lib/perl5/Qt.pm:521):
521: return sort { $match{$b}[0] <=> $match{$a}[0] or $match{$a}[1] <=> $match{$b}[1] } keys %match;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:565):
565: @methodids = @matching if @matching or $strictArgMatch;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:567):
567: do {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x8564304)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::AutoLoad::CODE(0x86220a8)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::base::ON_DESTROY(/usr/lib/perl5/Qt.pm:904):
904: sub Qt::base::ON_DESTROY { 0 };
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:427):
427: my $counter = counter - 1;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:429):
429: if ($forced || $counter == 0)
430: {
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:431):
431: $counter = 20;
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:433):
433: $dst_space -> setText (sprintf "%d/%d MB",
434: dir_files_size (dst_dir) / 1024. / 1024., tgt_size);
DvdMaker::dir_files_size(/usr/local/share/qvamps/lib/DvdMaker.pm:443):
443: my $dir = shift;
DvdMaker::dir_files_size(/usr/local/share/qvamps/lib/DvdMaker.pm:445):
445: return 0 unless (opendir DH, $dir);
Qt::AutoLoad::CODE(0x8564304)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
DvdMaker::update_status(/usr/local/share/qvamps/lib/DvdMaker.pm:437):
437: counter = $counter;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:265):
265: my $dvdauthor_xml = "$base_path/dvdauthor.xml";
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:266):
266: my $dvdauthor = read_setting ("/Dvdauthor/command");
QVamps::read_setting(/usr/local/share/qvamps/lib/QVamps.pm:174):
174: my $key = shift;
QVamps::read_setting(/usr/local/share/qvamps/lib/QVamps.pm:177):
177: my $ok;
QVamps::read_setting(/usr/local/share/qvamps/lib/QVamps.pm:178):
178: my $value = $settings -> readEntry ($key, undef, $ok);
Qt::AutoLoad::CODE(0x85c28d4)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
QVamps::read_setting(/usr/local/share/qvamps/lib/QVamps.pm:181):
181: return $value if ($ok);
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:267):
267: $dvdauthor = replace ($dvdauthor, { "x" => $dvdauthor_xml });
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:277):
277: my $str = shift;
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:278):
278: my %rep = %{shift ()};
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:278):
278: my %rep = %{shift ()};
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:280):
280: $rep {"%"} = "%";
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:282):
282: $str =~ s/%(.)/$rep{$1}/g;
QVamps::replace(/usr/local/share/qvamps/lib/QVamps.pm:284):
284: return $str;
DvdMaker::run_dvdauthor(/usr/local/share/qvamps/lib/DvdMaker.pm:269):
269: my $rc = launch_sh_cmd (0, $dvdauthor);
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:143):
143: my $hilite = shift;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:144):
144: my $cmd = shift;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:146):
146: hilite_errors = $hilite;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:147):
147: my $lv = log_viewer;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:149):
149: $lv -> setColor (Qt::Color (0, 0, 0xff));
Qt::_internal::CODE(0x84b20cc)(/usr/lib/perl5/Qt.pm:464):
464: $class->new(@_);
Qt::base::new(/usr/lib/perl5/Qt.pm:8):
8: my $t = this;
Qt::base::new(/usr/lib/perl5/Qt.pm:9):
9: shift->NEW(@_);
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:451):
451: my $class = shift;
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:452):
452: $Qt::AutoLoad::AUTOLOAD = "$class\::$c";
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:453):
453: my $autoload = " $class\::_UTOLOAD";
454: {
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:455):
455: no warnings;
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:457):
457: setThis(bless &$autoload, " $class");
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:459):
459: setAllocated(this, 1);
Qt::_internal::CODE(0x84b1f34)(/usr/lib/perl5/Qt.pm:460):
460: mapObject(this);
Qt::base::new(/usr/lib/perl5/Qt.pm:10):
10: my $ret = this;
Qt::base::new(/usr/lib/perl5/Qt.pm:11):
11: Qt::_internal::setThis($t);
Qt::base::new(/usr/lib/perl5/Qt.pm:12):
12: return $ret;
Qt::AutoLoad::CODE(0x861b6bc)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:549):
549: @methods = map { $_ . '#' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:549):
549: @methods = map { $_ . '#' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:531):
531: $t =~ s/^const\s+//;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:532):
532: $t =~ s/(?<=\w)[&*]$//;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:533):
533: return 0 unless classIsa($argtype, $t) != -1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x84b1f04)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::base::ON_DESTROY(/usr/lib/perl5/Qt.pm:904):
904: sub Qt::base::ON_DESTROY { 0 };
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:150):
150: $lv -> append (sprintf "%s \"%s\"\n\n", &tr ("Executing"), $cmd);
QVamps::trUtf8(/usr/local/share/qvamps/lib/QVamps.pm:460):
460: my $source = shift;
QVamps::trUtf8(/usr/local/share/qvamps/lib/QVamps.pm:461):
461: my $comment = shift;
QVamps::trUtf8(/usr/local/share/qvamps/lib/QVamps.pm:463):
463: my ($class_name) = caller;
QVamps::trUtf8(/usr/local/share/qvamps/lib/QVamps.pm:465):
465: return Qt::app () -> translate ($class_name, $source, $comment,
466: &Qt::Application::UnicodeUTF8);
Qt::AutoLoad::CODE(0x8482208)(/usr/lib/perl5/Qt.pm:428):
428: *{ $class . "::AUTOLOAD" } = sub{ &$closure };
Qt::AutoLoad::CODE(0x848267c)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::AutoLoad::CODE(0x861b6bc)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:151):
151: $lv -> setColor (default_color);
Qt::AutoLoad::CODE(0x861b6bc)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:153):
153: $cmd = "exec $cmd" unless ($cmd =~ /[|;]/);
DvdMaker::launch_sh_cmd(/usr/local/share/qvamps/lib/DvdMaker.pm:155):
155: return launch ([ "/bin/sh", "-c", $cmd ]);
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:103):
103: my $args = shift;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:105):
105: my $proc = proc;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:107):
107: $proc -> setArguments ($args);
Qt::AutoLoad::CODE(0x85ab334)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:551):
551: @methods = map { $_ . '?' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:551):
551: @methods = map { $_ . '?' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:109):
109: unless ($proc -> start ())
110: {
Qt::AutoLoad::CODE(0x85ab334)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:117):
117: my $event_loop = Qt::Application::eventLoop ();
Qt::AutoLoad::CODE(0x8482208)(/usr/lib/perl5/Qt.pm:428):
428: *{ $class . "::AUTOLOAD" } = sub{ &$closure };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:119):
119: proc_running = 1;
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:121):
121: while (proc_running)
122: {
DvdMaker::launch(/usr/local/share/qvamps/lib/DvdMaker.pm:123):
123: $event_loop -> processEvents (&Qt::EventLoop::WaitForMore);
Qt::AutoLoad::CODE(0x8504628)(/usr/lib/perl5/Qt.pm:428):
428: *{ $class . "::AUTOLOAD" } = sub{ &$closure };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
Qt::AutoLoad::CODE(0x8504700)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:546):
546: unless(defined $arg) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:553):
553: @methods = map { $_ . '$' } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:579):
579: @methodids = () unless objmatch($methodids[0], \@_)
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:525):
525: my $method = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:526):
526: my $args = shift;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:527):
527: for my $i(0..$#$args) {
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:528):
528: my $argtype = getSVt($$args[$i]);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:529):
529: my $t = getTypeNameOfArg($method, $i);
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:530):
530: next if length $argtype == 1;
Qt::_internal::objmatch(/usr/lib/perl5/Qt.pm:535):
535: 1;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
DvdMaker::read_output(/usr/local/share/qvamps/lib/DvdMaker.pm:190):
190: my $proc = proc;
DvdMaker::read_output(/usr/local/share/qvamps/lib/DvdMaker.pm:192):
192: while (my $s = $proc -> readStdout ())
193: {
Qt::AutoLoad::CODE(0x85ab334)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:539):
539: my $package = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:540):
540: my $method = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:541):
541: my $classId = pop;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:543):
543: my $class = $CppName{$IdClass[$classId]};
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:544):
544: my @methods = ($method);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:545):
545: for my $arg (@_) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:556):
556: my @methodids = map { findMethod($class, $_) } @methods;
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:560):
560: if(@methodids > 1) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:581):
581: unless(@methodids) {
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:624):
624: setCurrentMethod($methodids[0]);
Qt::_internal::do_autoload(/usr/lib/perl5/Qt.pm:625):
625: return 1;
/* endless repetition of the following lines */
DvdMaker::read_output(/usr/local/share/qvamps/lib/DvdMaker.pm:194):
194: append_output (0, $s);
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:167):
167: my $e = shift; # 0: stdout, 1: stderr
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:168):
168: my $s = shift; # string to append
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:171):
171: my $flush = ($s =~ s/[\b]+//g);
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:174):
174: $s =~ s/\r+/\n/g;
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:175):
175: $s =~ s/^libdvdread: .+\n//mg;
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:177):
177: $s = outbuf -> [$e] . $s;
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:178):
178: outbuf -> [$e] = !$flush && ($s =~ s/(.+)\z//) ? $1 : "";
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:180):
180: my $lv = log_viewer;
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:182):
182: $lv -> setColor (Qt::Color (0xff, 0, 0)) if ($e && hilite_errors);
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:183):
183: $lv -> append ($s);
Qt::AutoLoad::CODE(0x861b6bc)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
DvdMaker::append_output(/usr/local/share/qvamps/lib/DvdMaker.pm:184):
184: $lv -> setColor (default_color);
Qt::AutoLoad::CODE(0x861b6bc)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::AutoLoad::CODE(0x8494e80)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
Qt::base::ON_DESTROY(/usr/lib/perl5/Qt.pm:904):
904: sub Qt::base::ON_DESTROY { 0 };
Qt::AutoLoad::CODE(0x85ab334)(/usr/lib/perl5/Qt.pm:445):
445: *{ " $class\::AUTOLOAD" } = sub { &$autosub };
I am not a Perl programmer, thus I'm not able to fix the bug myself without help. Thanks in advance!
PS: This happens with and without the patch from the thread "qVamps crashes on hitting "Copy!"" applied.
PS: This happens with and without the patch against vamps 0.99.2 regarding "Premature EOF" applied.
PPS: As expected, the problem does not occur if I switch the "Copy Tasks" to "1: Create XML control file for dvdauthor, menu program stream and a shell script to (re-)run these copy tasks" and then run the generated script "run_me" in a terminal window manually.