| 614 | } |
| 615 | |
| 616 | void rem_port::unlinkParent() |
| 617 | { |
| 618 | if (this->port_parent == NULL) |
| 619 | return; |
| 620 | |
| 621 | #ifdef DEV_BUILD |
| 622 | bool found = false; |
| 623 | #endif |
| 624 | |
| 625 | for (rem_port** ptr = &this->port_parent->port_clients; *ptr; ptr = &(*ptr)->port_next) |
| 626 | { |
| 627 | if (*ptr == this) |
| 628 | { |
| 629 | *ptr = this->port_next; |
| 630 | |
| 631 | if (ptr == &this->port_parent->port_clients) |
| 632 | { |
| 633 | fb_assert(this->port_parent->port_next == this); |
| 634 | |
| 635 | this->port_parent->port_next = *ptr; |
| 636 | } |
| 637 | |
| 638 | #ifdef DEV_BUILD |
| 639 | found = true; |
| 640 | #endif |
| 641 | break; |
| 642 | } |
| 643 | } // for |
| 644 | |
| 645 | fb_assert(found); |
| 646 | |
| 647 | this->port_parent = NULL; |
| 648 | } |
| 649 | |
| 650 | bool rem_port::accept(p_cnct* cnct) |
| 651 | { |
no outgoing calls
no test coverage detected