Ticket #1168: portutil.tcl.diff

File portutil.tcl.diff, 2.9 KB (added by pguyot (Paul Guyot), 20 years ago)

Patch for src/port1.0/portutil.tcl that fixes the bug by adding a suffix to hook names.

  • src/port1.0/portutil.tcl

    RCS file: /Volumes/src/cvs/od/proj/darwinports/base/src/port1.0/portutil.tcl,v
    retrieving revision 1.144
    diff -u -r1.144 portutil.tcl
     
    857857            ui_debug "$ident registered provides \'$target\', a pre-existing procedure. Target override will not be provided"
    858858        } else {
    859859                eval "proc $target {args} \{ \n\
    860                         ditem_key $ditem procedure proc-${ident}-${target}
    861                         eval \"proc proc-${ident}-${target} \{name\} \{ \n\
    862                                 if \{\\\[catch userproc-${ident}-${target} result\\\]\} \{ \n\
     860                        variable proc_index \n\
     861                        set proc_index \[llength \[ditem_key $ditem proc\]\] \n\
     862                        ditem_key $ditem procedure proc-${ident}-${target}-\${proc_index}
     863                        eval \"proc proc-${ident}-${target}-\${proc_index} \{name\} \{ \n\
     864                                if \{\\\[catch userproc-${ident}-${target}-\${proc_index} result\\\]\} \{ \n\
    863865                                        return -code error \\\$result \n\
    864866                                \} else \{ \n\
    865867                                        return 0 \n\
    866868                                \} \n\
    867869                        \}\" \n\
    868870                        eval \"proc do-$target \{\} \{ $origproc $target\}\" \n\
    869                         makeuserproc userproc-${ident}-${target} \$args \n\
     871                        makeuserproc userproc-${ident}-${target}-\${proc_index} \$args \n\
    870872                \}"
    871873        }
    872874        eval "proc pre-$target {args} \{ \n\
    873                         ditem_append $ditem pre proc-pre-${ident}-${target}
    874                         eval \"proc proc-pre-${ident}-${target} \{name\} \{ \n\
    875                                 if \{\\\[catch userproc-pre-${ident}-${target} result\\\]\} \{ \n\
     875                        variable proc_index \n\
     876                        set proc_index \[llength \[ditem_key $ditem pre\]\] \n\
     877                        ditem_append $ditem pre proc-pre-${ident}-${target}-\${proc_index}
     878                        eval \"proc proc-pre-${ident}-${target}-\${proc_index} \{name\} \{ \n\
     879                                if \{\\\[catch userproc-pre-${ident}-${target}-\${proc_index} result\\\]\} \{ \n\
    876880                                        return -code error \\\$result \n\
    877881                                \} else \{ \n\
    878882                                        return 0 \n\
    879883                                \} \n\
    880884                        \}\" \n\
    881                         makeuserproc userproc-pre-${ident}-${target} \$args \n\
     885                        makeuserproc userproc-pre-${ident}-${target}-\${proc_index} \$args \n\
    882886                \}"
    883887        eval "proc post-$target {args} \{ \n\
    884                         ditem_append $ditem post proc-post-${ident}-${target}
    885                         eval \"proc proc-post-${ident}-${target} \{name\} \{ \n\
    886                                 if \{\\\[catch userproc-post-${ident}-${target} result\\\]\} \{ \n\
     888                        variable proc_index \n\
     889                        set proc_index \[llength \[ditem_key $ditem post\]\] \n\
     890                        ditem_append $ditem post proc-post-${ident}-${target}-\${proc_index}
     891                        eval \"proc proc-post-${ident}-${target}-\${proc_index} \{name\} \{ \n\
     892                                if \{\\\[catch userproc-post-${ident}-${target}-\${proc_index} result\\\]\} \{ \n\
    887893                                        return -code error \\\$result \n\
    888894                                \} else \{ \n\
    889895                                        return 0 \n\
    890896                                \} \n\
    891897                        \}\" \n\
    892                         makeuserproc userproc-post-${ident}-${target} \$args \n\
     898                        makeuserproc userproc-post-${ident}-${target}-\${proc_index} \$args \n\
    893899                \}"
    894900    }
    895901    eval "ditem_append $ditem provides $args"