| 1641 | } |
| 1642 | |
| 1643 | void IMAPSession::createFolder(String * folder, ErrorCode * pError) |
| 1644 | { |
| 1645 | int r; |
| 1646 | |
| 1647 | selectIfNeeded(MCSTR("INBOX"), pError); |
| 1648 | if (* pError != ErrorNone) |
| 1649 | return; |
| 1650 | |
| 1651 | r = mailimap_create(mImap, MCUTF8(folder)); |
| 1652 | if (r == MAILIMAP_ERROR_STREAM) { |
| 1653 | mShouldDisconnect = true; |
| 1654 | * pError = ErrorConnection; |
| 1655 | return; |
| 1656 | } |
| 1657 | else if (r == MAILIMAP_ERROR_PARSE) { |
| 1658 | mShouldDisconnect = true; |
| 1659 | * pError = ErrorParse; |
| 1660 | return; |
| 1661 | } |
| 1662 | else if (hasError(r)) { |
| 1663 | * pError = ErrorCreate; |
| 1664 | return; |
| 1665 | } |
| 1666 | |
| 1667 | * pError = ErrorNone; |
| 1668 | subscribeFolder(folder, pError); |
| 1669 | } |
| 1670 | |
| 1671 | void IMAPSession::subscribeFolder(String * folder, ErrorCode * pError) |
| 1672 | { |