1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-23 00:43:28 +00:00

Fix illegal function argument list referencing. This gets back

user process list in g-s-m on -CURRENT.
This commit is contained in:
Alexander Nedotsukov 2003-09-03 03:18:55 +00:00
parent ec3cd3ad7f
commit d79fcf684a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=88399
2 changed files with 63 additions and 0 deletions

View File

@ -7,6 +7,7 @@
PORTNAME= libgtop2
PORTVERSION= 2.0.4
PORTREVISION= 1
CATEGORIES= devel gnome
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= sources/${PORTNAME:S/2$//}/2.0

View File

@ -0,0 +1,62 @@
--- lib/lib.pl.orig Mon Sep 1 20:17:45 2003
+++ lib/lib.pl Wed Sep 3 11:53:12 2003
@@ -116,6 +116,8 @@
$param_decl = '';
$send_size = '';
$send_ptr = '';
+ $send_buf_decl = '';
+ $send_buf = '';
$nr_params = (@params = split(/:/, $param_def, 9999));
for ($param = 1; $param <= $nr_params; $param++) {
$list = $params[$param];
@@ -135,28 +137,37 @@
$fields[$field];
$call_param = $call_param . ', ' . $fields[$field];
- if ($send_ptr eq '') {
- $send_ptr = "\n\tconst void *send_ptr = &" .
-
- $fields[$field] . ';';
- }
- if ($send_size eq '') {
- $send_size = "\n\tconst size_t send_size =\n\t\t";
+ if ($send_buf eq '') {
+ $send_size = "\n\tconst size_t send_size = ";
+ $send_ptr = "\n\tconst void *send_ptr = &";
+ if ($nr_params == 1 && $count == 1) {
+ $send_size = $send_size . 'sizeof (' . $fields[$field] . ');';
+ $send_ptr = $send_ptr . $fields[$field] . ';';
+ last;
+ }
+ $send_size = $send_size . 'sizeof (send_buf);';
+ $send_ptr = $send_ptr . 'send_buf;';
}
else {
- $send_size = $send_size . ' + ';
+ $send_buf_decl = $send_buf_decl . ' ';
+ $send_buf = $send_buf . ', ';
}
- $send_size = $send_size . 'sizeof (' . $fields[$field] . ')';
+ $send_buf_decl = $send_buf_decl . '' . $convert{$type} . ' ' .
+
+ $fields[$field] . ';';
+ $send_buf = $send_buf . '' . $fields[$field];
}
}
- if ($send_size ne '') {
- $send_size = $send_size . ';';
- }
- else {
+ if ($send_size eq '') {
$send_size = "\n\tconst size_t send_size = 0;";
}
if ($send_ptr eq '') {
$send_ptr = "\n\tconst void *send_ptr = NULL;";
+ }
+ if ($send_buf ne '') {
+ $send_ptr = "\n\tconst struct { " . $send_buf_decl . " } send_buf =\n" .
+ "\t\t{ " . $send_buf . ' };' .
+ $send_ptr;
}
}