diff --git a/ebtables.c b/ebtables.c
index 1b819cd..6de714f 100644
--- a/ebtables.c
+++ b/ebtables.c
@@ -1170,9 +1170,14 @@
 			rule_nr--;
 		rule_nr_end = rule_nr;
 
-		ebt_check_for_loops(replace);
-		if (ebt_errormsg[0] != '\0')
-			goto delete_the_rule;
+		/* a jump to a udc requires checking for loops */
+		if (!strcmp(new_entry->t->u.name, EBT_STANDARD_TARGET) &&
+		((struct ebt_standard_target *)(new_entry->t))->verdict >= 0) {
+			/* FIXME: this can be done faster */
+			ebt_check_for_loops(replace);
+			if (ebt_errormsg[0] != '\0')
+				goto delete_the_rule;
+		}
 
 		/* Do the final_check(), for all entries.
 		 * This is needed when adding a rule that has a chain target */
diff --git a/libebtc.c b/libebtc.c
index 02003a7..f76a04c 100644
--- a/libebtc.c
+++ b/libebtc.c
@@ -1019,8 +1019,6 @@
 			verdict = ((struct ebt_standard_target *)(e->t))->verdict;
 			if (verdict < 0)
 				goto letscontinue;
-			entries2 = replace->chains[verdict + NF_BR_NUMHOOKS];
-			entries2->hook_mask |= entries->hook_mask;
 			/* Now see if we've been here before */
 			for (k = 0; k < sp; k++)
 				if (stack[k].chain_nr == verdict + NF_BR_NUMHOOKS) {
@@ -1029,6 +1027,11 @@
 					   replace->chains[stack[k].chain_nr]->name);
 					goto free_stack;
 				}
+			entries2 = replace->chains[verdict + NF_BR_NUMHOOKS];
+			/* check if we've dealt with this chain already */
+			if (entries2->hook_mask & (1<<i))
+				goto letscontinue;
+			entries2->hook_mask |= entries->hook_mask;
 			/* Jump to the chain, make sure we know how to get back */
 			stack[sp].chain_nr = chain_nr;
 			stack[sp].n = j;
