Index: scribus/scribus.cpp =================================================================== RCS file: /cvs/Scribus/scribus/scribus.cpp,v retrieving revision 1.218 diff -u -p -r1.218 scribus.cpp --- scribus/scribus.cpp 3 Sep 2004 21:01:51 -0000 1.218 +++ scribus/scribus.cpp 4 Sep 2004 12:03:21 -0000 @@ -1642,27 +1642,19 @@ void ScribusApp::keyPressEvent(QKeyEvent } } } - if (b->CPos == static_cast(b->Ptext.count())) + if ((b->CPos > 0) && (b->CPos == static_cast(b->Ptext.count()))) { if (b->Ptext.at(b->CPos-1)->cstyle & 256) { b->CPos -= 1; - while (b->Ptext.at(b->CPos)->cstyle & 256) - { + while ((b->CPos > 0) && (b->Ptext.at(b->CPos)->cstyle & 256)) b->CPos--; - if (b->CPos == 0) - break; - } } } else { - while ((b->Ptext.at(b->CPos)->cstyle & 256) && (b->CPos > 0)) - { + while ((b->CPos > 0) && (b->Ptext.at(b->CPos)->cstyle & 256)) b->CPos--; - if (b->CPos == 0) - break; - } } if ( b->HasSel ) doc->ActPage->RefreshItem(b, true);