Yes, the functions are not called if root1->data == root2->data
is false
.
Simple check is to do this:
#include
#include
int main(void)
{
write(1, "z", 1);
if ((1 == 0) && write(1, "a", 1) && write(1, "b", 1))
{
write(1, "c", 1);
}
write(1, "d", 1);
return (EXIT_SUCCESS);
}