| Summary: | криво проверяется "уж не apt-get install file.rpm ли мы делаем" | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Konstantin Pavlov <thresh> |
| Component: | apt | Assignee: | placeholder <placeholder> |
| Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
| Severity: | normal | ||
| Priority: | P2 | CC: | boyarsh, evg, glebfm, ildar, imz, ldv, php-coder, placeholder, vt, vvk |
| Version: | unstable | ||
| Hardware: | all | ||
| OS: | Linux | ||
Проблема в apt-pkg/contrib/fileutl.cc в функции flExtension():
string::size_type Res = File.rfind('.');
if (Res == string::npos)
return File;
...
Т.е. если расширения нет, то расширением считается всё имя файла.
А ноги у этого растут из apt-pkg/rpm/rpmsystem.cc, rpmSystem::AddSourceFiles(). Я думаю, что это duplicate для bug #14699 *** Bug 14699 has been marked as a duplicate of this bug. *** Ну да, есть такое. Поменяю flExtension, пусть пустую строку возвращает, когда расширения нет. 0.5.15lorg2-alt21: вроде работает. |
# mkdir ./rpm # apt-get install rpm apt-get install rpm error: read failed: Is a directory (21) Reading Package Lists... Error! E: Failed reading file rpm E: Problem opening /var/lib/apt/lists/ftp.altlinux.com_pub_distributions_ALTLinux_4.0_Server_current_i586_base_pkglist.classic E: The package lists or status file could not be parsed or opened. по strace видно, что apt пытается: open("rpm", O_RDONLY) = 6 и ему от этого плохеет.